From 83280d90d12545d36a301c437c7d9095f190aac3 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期一, 21 六月 2021 08:54:16 +0800 Subject: [PATCH] 算工资 --- zhengcaioa/DTO/FiPiecerateDTO.cs | 3 zhengcaioa/IServices/IFiPiecerateService.cs | 1 zhengcaioa/.vs/zhengcaioa/DesignTimeBuild/.dtbcache.v2 | 0 zhengcaioa/Services/HrSalaryService.cs | 277 +++ zhengcaioa/Model/HrSalary.cs | 42 zhengcaioa/zhengcaioa/Views/Shared/_Layout_Search.cshtml | 10 zhengcaioa/.vs/zhengcaioa/v16/.suo | 0 zhengcaioa/zhengcaioa/Views/User/JiBenGongZi.cshtml | 131 + zhengcaioa/zhengcaioa/Startup.cs | 13 zhengcaioa/zhengcaioa/Controllers/UserController.cs | 95 + zhengcaioa/zhengcaioa/zhengcaioa.csproj.user | 2 考勤计算的表.sql | 120 + zhengcaioa/DTO/HrSalaryDTO.cs | 78 + zhengcaioa/Services/HrJixiaotichengService.cs | 207 ++ zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Index.cshtml | 4 zhengcaioa/Model/zhengcaioaContext.cs | 374 ++++ zhengcaioa/IServices/IHrJixiaotichengService.cs | 21 zhengcaioa/Model/HrJibengongzi.cs | 26 zhengcaioa/Services/FiPiecerateService.cs | 34 zhengcaioa/zhengcaioa/wwwroot/js/plugins/search/search.js | 6 zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml | 8 zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml | 90 zhengcaioa/IServices/IHrJibengongziService.cs | 22 用户表更新.sql | 34 zhengcaioa/zhengcaioa/Views/User/Edit.cshtml | 57 zhengcaioa/zhengcaioa/Views/HrJibengongzi/Index.cshtml | 87 + zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs | 2 zhengcaioa/Services/HrJibengongziService.cs | 202 ++ zhengcaioa/DTO/HrJibengongziDTO.cs | 42 zhengcaioa/zhengcaioa/Views/User/EditBeizhu.cshtml | 354 +++++ zhengcaioa/zhengcaioa/Controllers/admin/AdmPieceCheckController.cs | 4 zhengcaioa/DTO/PltUserDTO.cs | 22 zhengcaioa/Model/HrJixiaoticheng.cs | 24 表修改.sql | 238 ++ zhengcaioa/CommonToolsCore/AutoMapperConfigs.cs | 10 zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml | 467 ++++++ zhengcaioa/Model/PltUser.cs | 7 zhengcaioa/zhengcaioa/Views/HrJibengongzi/Edit.cshtml | 452 ++++++ zhengcaioa/DTO/HrJixiaotichengDTO.cs | 39 zhengcaioa/zhengcaioa/Controllers/HR/HrJibengongziController.cs | 157 ++ zhengcaioa/IServices/IHrSalaryService.cs | 22 zhengcaioa/zhengcaioa/Controllers/Finance/FiPiecerateController.cs | 12 zhengcaioa/zhengcaioa/Controllers/HR/HrJixiaotichengController.cs | 159 ++ zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs | 42 zhengcaioa/Services/UserService.cs | 37 zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Index.cshtml | 87 + zhengcaioa/Services/PltPageService.cs | 1 zhengcaioa/zhengcaioa/Views/FiPiecerate/Index.cshtml | 30 48 files changed, 3,950 insertions(+), 202 deletions(-) diff --git a/zhengcaioa/.vs/zhengcaioa/DesignTimeBuild/.dtbcache.v2 b/zhengcaioa/.vs/zhengcaioa/DesignTimeBuild/.dtbcache.v2 index 16bf675..3b23b40 100644 --- a/zhengcaioa/.vs/zhengcaioa/DesignTimeBuild/.dtbcache.v2 +++ b/zhengcaioa/.vs/zhengcaioa/DesignTimeBuild/.dtbcache.v2 Binary files differ diff --git a/zhengcaioa/.vs/zhengcaioa/v16/.suo b/zhengcaioa/.vs/zhengcaioa/v16/.suo index 849f9bf..4fa71d5 100644 --- a/zhengcaioa/.vs/zhengcaioa/v16/.suo +++ b/zhengcaioa/.vs/zhengcaioa/v16/.suo Binary files differ diff --git a/zhengcaioa/CommonToolsCore/AutoMapperConfigs.cs b/zhengcaioa/CommonToolsCore/AutoMapperConfigs.cs index 32fb0ce..d5a8f36 100644 --- a/zhengcaioa/CommonToolsCore/AutoMapperConfigs.cs +++ b/zhengcaioa/CommonToolsCore/AutoMapperConfigs.cs @@ -187,6 +187,16 @@ CreateMap<AdmAttendance, AdmAttendanceDTO>(); CreateMap<AdmAttendanceDTO, AdmAttendance>(); + + CreateMap<HrJibengongzi, HrJibengongziDTO>(); + CreateMap<HrJibengongziDTO, HrJibengongzi>(); + + CreateMap<HrJixiaoticheng, HrJixiaotichengDTO>(); + CreateMap<HrJixiaotichengDTO, HrJixiaoticheng>(); + + CreateMap<HrSalary, HrSalaryDTO>(); + CreateMap<HrSalaryDTO, HrSalary>(); + } } } diff --git a/zhengcaioa/DTO/FiPiecerateDTO.cs b/zhengcaioa/DTO/FiPiecerateDTO.cs index 57f4149..e959911 100644 --- a/zhengcaioa/DTO/FiPiecerateDTO.cs +++ b/zhengcaioa/DTO/FiPiecerateDTO.cs @@ -28,5 +28,8 @@ public string Pieceratetype { get; set; } public string Project { get; set; } + public string Standard { get; set; } + + } } diff --git a/zhengcaioa/DTO/HrJibengongziDTO.cs b/zhengcaioa/DTO/HrJibengongziDTO.cs new file mode 100644 index 0000000..6d6c194 --- /dev/null +++ b/zhengcaioa/DTO/HrJibengongziDTO.cs @@ -0,0 +1,42 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Text; + +namespace DTO +{ + public class HrJibengongziDTO + { + public string Id { get; set; } + public string PostId { get; set; } + public string PostName { get; set; } + public decimal? Jibengongzi { get; set; } + public string JibengongziName { get; set; } + public decimal? Baomifei { get; set; } + public string BaomifeiName { get; set; } + public decimal? Shebaodanwei { get; set; } + public string ShebaodanweiName { get; set; } + public decimal? Shebaogeren { get; set; } + public string ShebaogerenName { get; set; } + public string Dianhuabutie { get; set; } + public string DianhuabutieName { get; set; } + public decimal? Quanqingjiang { get; set; } + public string QuanqingjiangName { get; set; } + public decimal? Jiaotongbutie { get; set; } + public string JiaotongbutieName { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + + public DateTime? Effecttime { get; set; } + + public string EffecttimeName { get; set; } + } + + public class HrJibengongziDTOSearch : SearchEntity + { + public string PostId { get; set; } + + } +} diff --git a/zhengcaioa/DTO/HrJixiaotichengDTO.cs b/zhengcaioa/DTO/HrJixiaotichengDTO.cs new file mode 100644 index 0000000..61806d9 --- /dev/null +++ b/zhengcaioa/DTO/HrJixiaotichengDTO.cs @@ -0,0 +1,39 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Text; + +namespace DTO +{ + public class HrJixiaotichengDTO + { + public string Id { get; set; } + public string PostId { get; set; } + public string PostName { get; set; } + public string PiecerateId { get; set; } + public string PiecerateName { get; set; } + public string Tichengstandard { get; set; } + public string TichengstandardName { get; set; } + public string Renwustandard { get; set; } + public string RenwustandardName { get; set; } + public decimal? Ticheng { get; set; } + public string TichengName { get; set; } + public decimal? Renwu { get; set; } + public string RenwuName { get; set; } + public DateTime? Effecttime { get; set; } + public string EffecttimeName { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + } + + + public class HrJixiaotichengDTOSearch : SearchEntity + { + public string PostId { get; set; } + + public string PiecerateId { get; set; } + + } +} diff --git a/zhengcaioa/DTO/HrSalaryDTO.cs b/zhengcaioa/DTO/HrSalaryDTO.cs new file mode 100644 index 0000000..9119f27 --- /dev/null +++ b/zhengcaioa/DTO/HrSalaryDTO.cs @@ -0,0 +1,78 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Text; + +namespace DTO +{ + public class HrSalaryDTO + { + public string Id { get; set; } + public string Userid { get; set; } + public int Year { get; set; } + public int Month { get; set; } + public string Usernumber { get; set; } + public string UserName { get; set; } + public string DeptName { get; set; } + public decimal? Jibengongzi { get; set; } + public decimal? Baomifei { get; set; } + public decimal? Gongzuobutie { get; set; } + public decimal? Jiabangongzi { get; set; } + public decimal? Shebao { get; set; } + public decimal? Dianhuabutie { get; set; } + public decimal? Quanqinjiang { get; set; } + public decimal? Jiaotngbutie { get; set; } + public decimal? Jixiaoticheng { get; set; } + public decimal? Jiangjin { get; set; } + public decimal? Bufagongzi { get; set; } + public decimal? Shebaokou { get; set; } + public decimal? Geshui { get; set; } + public decimal? Dianhuafei { get; set; } + public decimal? Queqin { get; set; } + public decimal? Fakuan { get; set; } + public decimal? Peichang { get; set; } + public decimal? Jiucuo { get; set; } + public decimal? Daozhanggongzi { get; set; } + public decimal? Yufagongzi { get; set; } + public decimal? Yufagongziheji { get; set; } + + + public string JibengongziName { get; set; } + public string BaomifeiName { get; set; } + public string GongzuobutieName { get; set; } + public string JiabangongziName { get; set; } + public string ShebaoName { get; set; } + public string DianhuabutieName { get; set; } + public string QuanqinjiangName { get; set; } + public string JiaotngbutieName { get; set; } + public string JixiaotichengName { get; set; } + public string JiangjinName { get; set; } + public string BufagongziName { get; set; } + public string ShebaokouName { get; set; } + public string GeshuiName { get; set; } + public string DianhuafeiName { get; set; } + public string QueqinName { get; set; } + public string FakuanName { get; set; } + public string PeichangName { get; set; } + public string JiucuoName { get; set; } + public string DaozhanggongziName { get; set; } + public string YufagongziName { get; set; } + public string YufagongzihejiName { get; set; } + + + public string Islock { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + } + + public partial class HrSalaryDTOSearch : SearchEntity + { + public string YearMonth { get; set; } + public string Usernumber { get; set; } + public string DeptId { get; set; } + public string UserName { get; set; } + + } +} diff --git a/zhengcaioa/DTO/PltUserDTO.cs b/zhengcaioa/DTO/PltUserDTO.cs index c4593d0..55fd534 100644 --- a/zhengcaioa/DTO/PltUserDTO.cs +++ b/zhengcaioa/DTO/PltUserDTO.cs @@ -99,19 +99,39 @@ /// 棰勫彂宸ヨ祫 /// </summary> public decimal? advancewages { get; set; } + public string advancewagesName { get; set; } /// <summary> /// 淇濆簳骞磋柂 /// </summary> public decimal? miniyearsalary { get; set; } + public string miniyearsalaryName { get; set; } /// <summary> /// 宸ラ緞宸ヨ祫 /// </summary> public decimal? senioritywages { get; set; } + public string senioritywagesName { get; set; } /// <summary> /// 鏄惁浜ら�氳ˉ璐� /// </summary> public string Istravelsubsidy { get; set; } + /// <summary> + /// 鏄惁浜ら�氳ˉ璐� + /// </summary> + public string IstravelsubsidyName { get; set; } + + public string Beizhu { get; set; } + + + public decimal? baomisalary { get; set; } + public string baomisalaryName { get; set; } + public decimal? jibensalary { get; set; } + public string jibensalaryName { get; set; } + public decimal? jintiesalary { get; set; } + public string jintiesalaryName { get; set; } + + public decimal? geshuiqizheng { get; set; } + public string geshuiqizhengName { get; set; } public string[] JiatingchengyuanId { get; set; } @@ -149,5 +169,7 @@ public string UserSn { get; set; } public string Zhiwustatus { get; set; } + + public string Usernumber { get; set; } } } diff --git a/zhengcaioa/IServices/IFiPiecerateService.cs b/zhengcaioa/IServices/IFiPiecerateService.cs index b4bc5c4..bf6a827 100644 --- a/zhengcaioa/IServices/IFiPiecerateService.cs +++ b/zhengcaioa/IServices/IFiPiecerateService.cs @@ -18,5 +18,6 @@ ResultEntity ModifyStatus(string id, string userid); List<FiPiecerateDTO> GetList(); + List<FiPiecerateDTO> GetListAll(); } } diff --git a/zhengcaioa/IServices/IHrJibengongziService.cs b/zhengcaioa/IServices/IHrJibengongziService.cs new file mode 100644 index 0000000..b5a3f2f --- /dev/null +++ b/zhengcaioa/IServices/IHrJibengongziService.cs @@ -0,0 +1,22 @@ +锘縰sing DTO; +using System; +using System.Collections.Generic; +using System.Text; + + +namespace IServices +{ + public interface IHrJibengongziService + { + + ResultEntity save(HrJibengongziDTO dto); + + HrJibengongziDTO Get(string id); + + ResultDataEntity<HrJibengongziDTO> SearchByPaging(HrJibengongziDTOSearch searchEntity); + + ResultEntity ModifyStatus(string id, string userid); + + List<HrJibengongziDTO> GetList(); + } +} diff --git a/zhengcaioa/IServices/IHrJixiaotichengService.cs b/zhengcaioa/IServices/IHrJixiaotichengService.cs new file mode 100644 index 0000000..7912ee6 --- /dev/null +++ b/zhengcaioa/IServices/IHrJixiaotichengService.cs @@ -0,0 +1,21 @@ +锘縰sing DTO; +using System; +using System.Collections.Generic; +using System.Text; + + +namespace IServices +{ + public interface IHrJixiaotichengService + { + ResultEntity save(HrJixiaotichengDTO dto); + + HrJixiaotichengDTO Get(string id); + + ResultDataEntity<HrJixiaotichengDTO> SearchByPaging(HrJixiaotichengDTOSearch searchEntity); + + ResultEntity ModifyStatus(string id, string userid); + + List<HrJixiaotichengDTO> GetList(); + } +} diff --git a/zhengcaioa/IServices/IHrSalaryService.cs b/zhengcaioa/IServices/IHrSalaryService.cs new file mode 100644 index 0000000..87e6e5b --- /dev/null +++ b/zhengcaioa/IServices/IHrSalaryService.cs @@ -0,0 +1,22 @@ +锘縰sing DTO; +using System; +using System.Collections.Generic; +using System.Text; + + +namespace IServices +{ + public interface IHrSalaryService + { + + ResultEntity save(HrSalaryDTO dto); + + HrSalaryDTO Get(string id); + + ResultDataEntity<HrSalaryDTO> SearchByPaging(HrSalaryDTOSearch searchEntity); + + ResultEntity ModifyStatus(string id, string userid); + + List<HrSalaryDTO> GetList(); + } +} diff --git a/zhengcaioa/Model/HrJibengongzi.cs b/zhengcaioa/Model/HrJibengongzi.cs new file mode 100644 index 0000000..a9e8498 --- /dev/null +++ b/zhengcaioa/Model/HrJibengongzi.cs @@ -0,0 +1,26 @@ +锘縰sing System; +using System.Collections.Generic; + +#nullable disable + +namespace zhengcaioa.Models +{ + public partial class HrJibengongzi + { + public string Id { get; set; } + public string PostId { get; set; } + public decimal? Jibengongzi { get; set; } + public decimal? Baomifei { get; set; } + public decimal? Shebaodanwei { get; set; } + public decimal? Shebaogeren { get; set; } + public string Dianhuabutie { get; set; } + public decimal? Quanqingjiang { get; set; } + public decimal? Jiaotongbutie { get; set; } + public DateTime? Effecttime { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + } +} diff --git a/zhengcaioa/Model/HrJixiaoticheng.cs b/zhengcaioa/Model/HrJixiaoticheng.cs new file mode 100644 index 0000000..118190d --- /dev/null +++ b/zhengcaioa/Model/HrJixiaoticheng.cs @@ -0,0 +1,24 @@ +锘縰sing System; +using System.Collections.Generic; + +#nullable disable + +namespace zhengcaioa.Models +{ + public partial class HrJixiaoticheng + { + public string Id { get; set; } + public string PostId { get; set; } + public string PiecerateId { get; set; } + public string Tichengstandard { get; set; } + public string Renwustandard { get; set; } + public decimal? Ticheng { get; set; } + public decimal? Renwu { get; set; } + public DateTime? Effecttime { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + } +} diff --git a/zhengcaioa/Model/HrSalary.cs b/zhengcaioa/Model/HrSalary.cs new file mode 100644 index 0000000..475be17 --- /dev/null +++ b/zhengcaioa/Model/HrSalary.cs @@ -0,0 +1,42 @@ +锘縰sing System; +using System.Collections.Generic; + +#nullable disable + +namespace zhengcaioa.Models +{ + public partial class HrSalary + { + public string Id { get; set; } + public string Userid { get; set; } + public int Year { get; set; } + public int Month { get; set; } + public decimal? Jibengongzi { get; set; } + public decimal? Baomifei { get; set; } + public decimal? Gongzuobutie { get; set; } + public decimal? Jiabangongzi { get; set; } + public decimal? Shebao { get; set; } + public decimal? Dianhuabutie { get; set; } + public decimal? Quanqinjiang { get; set; } + public decimal? Jiaotngbutie { get; set; } + public decimal? Jixiaoticheng { get; set; } + public decimal? Jiangjin { get; set; } + public decimal? Bufagongzi { get; set; } + public decimal? Shebaokou { get; set; } + public decimal? Geshui { get; set; } + public decimal? Dianhuafei { get; set; } + public decimal? Queqin { get; set; } + public decimal? Fakuan { get; set; } + public decimal? Peichang { get; set; } + public decimal? Jiucuo { get; set; } + public decimal? Daozhanggongzi { get; set; } + public decimal? Yufagongzi { get; set; } + public decimal? Yufagongziheji { get; set; } + public string Islock { get; set; } + public string RecStatus { get; set; } + public string Creater { get; set; } + public DateTime Createtime { get; set; } + public string Modifier { get; set; } + public DateTime Modifytime { get; set; } + } +} diff --git a/zhengcaioa/Model/PltUser.cs b/zhengcaioa/Model/PltUser.cs index bcf0962..250f2ef 100644 --- a/zhengcaioa/Model/PltUser.cs +++ b/zhengcaioa/Model/PltUser.cs @@ -59,7 +59,6 @@ public string JinjiPhone { get; set; } public string JzYoubian { get; set; } public string HjYoubian { get; set; } - public string IpMac { get; set; } public string Usernumber { get; set; } public string Isxmenter { get; set; } @@ -68,6 +67,10 @@ public decimal? miniyearsalary { get; set; } public decimal? senioritywages { get; set; } public string Istravelsubsidy { get; set; } - + public string Beizhu { get; set; } + public decimal? baomisalary { get; set; } + public decimal? jibensalary { get; set; } + public decimal? jintiesalary { get; set; } + public decimal? geshuiqizheng { get; set; } } } diff --git a/zhengcaioa/Model/zhengcaioaContext.cs b/zhengcaioa/Model/zhengcaioaContext.cs index eef7cde..be4dbef 100644 --- a/zhengcaioa/Model/zhengcaioaContext.cs +++ b/zhengcaioa/Model/zhengcaioaContext.cs @@ -50,7 +50,10 @@ public virtual DbSet<GroupTopic> GroupTopics { get; set; } public virtual DbSet<GroupTuiguang> GroupTuiguangs { get; set; } public virtual DbSet<HrDept> HrDepts { get; set; } + public virtual DbSet<HrJibengongzi> HrJibengongzis { get; set; } + public virtual DbSet<HrJixiaoticheng> HrJixiaotichengs { get; set; } public virtual DbSet<HrPosition> HrPositions { get; set; } + public virtual DbSet<HrSalary> HrSalaries { get; set; } public virtual DbSet<IntentionCustomer> IntentionCustomers { get; set; } public virtual DbSet<IntentionOrder> IntentionOrders { get; set; } public virtual DbSet<IntentionVisit> IntentionVisits { get; set; } @@ -239,7 +242,7 @@ entity.Property(e => e.Id).HasMaxLength(50); entity.Property(e => e.Chidao) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("chidao"); entity.Property(e => e.Creater) @@ -260,11 +263,11 @@ .HasDefaultValueSql("('D')"); entity.Property(e => e.Jiaban) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("jiaban"); entity.Property(e => e.Kuanggong) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("kuanggong"); entity.Property(e => e.Modifier) @@ -281,11 +284,11 @@ entity.Property(e => e.Month).HasColumnName("month"); entity.Property(e => e.Offdays) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("offdays"); entity.Property(e => e.Qingjia) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("qingjia"); entity.Property(e => e.RecStatus) @@ -295,7 +298,7 @@ .HasDefaultValueSql("('A')"); entity.Property(e => e.Shijichuqin) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("shijichuqin"); entity.Property(e => e.Userid) @@ -303,17 +306,17 @@ .HasMaxLength(50); entity.Property(e => e.Xiaojia) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("xiaojia"); entity.Property(e => e.Year).HasColumnName("year"); entity.Property(e => e.Yingchuqin) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("yingchuqin"); entity.Property(e => e.Zaotui) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("zaotui"); }); @@ -332,6 +335,10 @@ .HasMaxLength(50) .HasColumnName("attendance_id"); + entity.Property(e => e.Chidaofenzhong) + .HasColumnType("decimal(18, 4)") + .HasColumnName("chidaofenzhong"); + entity.Property(e => e.Creater) .IsRequired() .HasMaxLength(50) @@ -342,6 +349,10 @@ .HasColumnType("datetime") .HasColumnName("createtime") .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.Kuanggongtianshu) + .HasColumnType("decimal(18, 4)") + .HasColumnName("kuanggongtianshu"); entity.Property(e => e.Modifier) .IsRequired() @@ -363,7 +374,7 @@ entity.Property(e => e.OvertimeOut).HasColumnType("datetime"); entity.Property(e => e.Qingjia) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("qingjia"); entity.Property(e => e.RecStatus) @@ -377,8 +388,12 @@ .HasDefaultValueSql("(getdate())"); entity.Property(e => e.Xiaojia) - .HasColumnType("decimal(18, 2)") + .HasColumnType("decimal(18, 4)") .HasColumnName("xiaojia"); + + entity.Property(e => e.Zaotuifenzhong) + .HasColumnType("decimal(18, 4)") + .HasColumnName("zaotuifenzhong"); }); modelBuilder.Entity<AdmAttendanceRule>(entity => @@ -2468,6 +2483,140 @@ .HasColumnName("superior_top"); }); + modelBuilder.Entity<HrJibengongzi>(entity => + { + entity.ToTable("hr_jibengongzi"); + + entity.Property(e => e.Id).HasMaxLength(50); + + entity.Property(e => e.Baomifei) + .HasColumnType("money") + .HasColumnName("baomifei"); + + entity.Property(e => e.Creater) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("creater") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Createtime) + .HasColumnType("datetime") + .HasColumnName("createtime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.Dianhuabutie) + .HasMaxLength(50) + .HasColumnName("dianhuabutie"); + + entity.Property(e => e.Effecttime) + .HasColumnType("datetime") + .HasColumnName("effecttime"); + + entity.Property(e => e.Jiaotongbutie) + .HasColumnType("money") + .HasColumnName("jiaotongbutie"); + + entity.Property(e => e.Jibengongzi) + .HasColumnType("money") + .HasColumnName("jibengongzi"); + + entity.Property(e => e.Modifier) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("modifier") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Modifytime) + .HasColumnType("datetime") + .HasColumnName("modifytime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.PostId) + .HasMaxLength(50) + .HasColumnName("post_id"); + + entity.Property(e => e.Quanqingjiang) + .HasColumnType("money") + .HasColumnName("quanqingjiang"); + + entity.Property(e => e.RecStatus) + .IsRequired() + .HasMaxLength(1) + .HasColumnName("rec_status") + .HasDefaultValueSql("('A')"); + + entity.Property(e => e.Shebaodanwei) + .HasColumnType("money") + .HasColumnName("shebaodanwei"); + + entity.Property(e => e.Shebaogeren) + .HasColumnType("money") + .HasColumnName("shebaogeren"); + }); + + modelBuilder.Entity<HrJixiaoticheng>(entity => + { + entity.ToTable("hr_jixiaoticheng"); + + entity.Property(e => e.Id).HasMaxLength(50); + + entity.Property(e => e.Creater) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("creater") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Createtime) + .HasColumnType("datetime") + .HasColumnName("createtime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.Effecttime) + .HasColumnType("datetime") + .HasColumnName("effecttime"); + + entity.Property(e => e.Modifier) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("modifier") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Modifytime) + .HasColumnType("datetime") + .HasColumnName("modifytime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.PiecerateId) + .HasMaxLength(50) + .HasColumnName("piecerate_id"); + + entity.Property(e => e.PostId) + .HasMaxLength(50) + .HasColumnName("post_id"); + + entity.Property(e => e.RecStatus) + .IsRequired() + .HasMaxLength(1) + .HasColumnName("rec_status") + .HasDefaultValueSql("('A')"); + + entity.Property(e => e.Renwu) + .HasColumnType("money") + .HasColumnName("renwu"); + + entity.Property(e => e.Renwustandard) + .HasMaxLength(50) + .HasColumnName("renwustandard"); + + entity.Property(e => e.Ticheng) + .HasColumnType("money") + .HasColumnName("ticheng"); + + entity.Property(e => e.Tichengstandard) + .HasMaxLength(50) + .HasColumnName("tichengstandard"); + }); + modelBuilder.Entity<HrPosition>(entity => { entity.ToTable("hr_position"); @@ -2511,6 +2660,139 @@ .HasMaxLength(1) .HasColumnName("rec_status") .HasDefaultValueSql("('A')"); + }); + + modelBuilder.Entity<HrSalary>(entity => + { + entity.ToTable("hr_salary"); + + entity.Property(e => e.Id).HasMaxLength(50); + + entity.Property(e => e.Baomifei) + .HasColumnType("decimal(18, 4)") + .HasColumnName("baomifei"); + + entity.Property(e => e.Bufagongzi) + .HasColumnType("decimal(18, 4)") + .HasColumnName("bufagongzi"); + + entity.Property(e => e.Creater) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("creater") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Createtime) + .HasColumnType("datetime") + .HasColumnName("createtime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.Daozhanggongzi) + .HasColumnType("decimal(18, 4)") + .HasColumnName("daozhanggongzi"); + + entity.Property(e => e.Dianhuabutie) + .HasColumnType("decimal(18, 4)") + .HasColumnName("dianhuabutie"); + + entity.Property(e => e.Dianhuafei) + .HasColumnType("decimal(18, 4)") + .HasColumnName("dianhuafei"); + + entity.Property(e => e.Fakuan) + .HasColumnType("decimal(18, 4)") + .HasColumnName("fakuan"); + + entity.Property(e => e.Geshui) + .HasColumnType("decimal(18, 4)") + .HasColumnName("geshui"); + + entity.Property(e => e.Gongzuobutie) + .HasColumnType("decimal(18, 4)") + .HasColumnName("gongzuobutie"); + + entity.Property(e => e.Islock) + .IsRequired() + .HasMaxLength(1) + .HasColumnName("islock") + .HasDefaultValueSql("('D')"); + + entity.Property(e => e.Jiabangongzi) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jiabangongzi"); + + entity.Property(e => e.Jiangjin) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jiangjin"); + + entity.Property(e => e.Jiaotngbutie) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jiaotngbutie"); + + entity.Property(e => e.Jibengongzi) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jibengongzi"); + + entity.Property(e => e.Jiucuo) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jiucuo"); + + entity.Property(e => e.Jixiaoticheng) + .HasColumnType("decimal(18, 4)") + .HasColumnName("jixiaoticheng"); + + entity.Property(e => e.Modifier) + .IsRequired() + .HasMaxLength(50) + .HasColumnName("modifier") + .HasDefaultValueSql("('1')"); + + entity.Property(e => e.Modifytime) + .HasColumnType("datetime") + .HasColumnName("modifytime") + .HasDefaultValueSql("(getdate())"); + + entity.Property(e => e.Month).HasColumnName("month"); + + entity.Property(e => e.Peichang) + .HasColumnType("decimal(18, 4)") + .HasColumnName("peichang"); + + entity.Property(e => e.Quanqinjiang) + .HasColumnType("decimal(18, 4)") + .HasColumnName("quanqinjiang"); + + entity.Property(e => e.Queqin) + .HasColumnType("decimal(18, 4)") + .HasColumnName("queqin"); + + entity.Property(e => e.RecStatus) + .IsRequired() + .HasMaxLength(1) + .HasColumnName("rec_status") + .HasDefaultValueSql("('A')"); + + entity.Property(e => e.Shebao) + .HasColumnType("decimal(18, 4)") + .HasColumnName("shebao"); + + entity.Property(e => e.Shebaokou) + .HasColumnType("decimal(18, 4)") + .HasColumnName("shebaokou"); + + entity.Property(e => e.Userid) + .IsRequired() + .HasMaxLength(50); + + entity.Property(e => e.Year).HasColumnName("year"); + + entity.Property(e => e.Yufagongzi) + .HasColumnType("decimal(18, 4)") + .HasColumnName("yufagongzi"); + + entity.Property(e => e.Yufagongziheji) + .HasColumnType("decimal(18, 4)") + .HasColumnName("yufagongziheji"); }); modelBuilder.Entity<IntentionCustomer>(entity => @@ -3206,11 +3488,23 @@ entity.Property(e => e.Id).HasMaxLength(50); + entity.Property(e => e.advancewages) + .HasColumnType("decimal(10, 2)") + .HasColumnName("advancewages"); + entity.Property(e => e.BasicPrice) .HasMaxLength(500) .HasColumnName("basic_price") .HasDefaultValueSql("('')") .HasComment("钖祫寰呴亣"); + + entity.Property(e => e.baomisalary) + .HasColumnType("decimal(10, 2)") + .HasColumnName("baomisalary"); + + entity.Property(e => e.Beizhu) + .HasMaxLength(500) + .HasColumnName("beizhu"); entity.Property(e => e.Birthday) .HasColumnType("datetime") @@ -3244,6 +3538,10 @@ .HasMaxLength(50) .HasColumnName("email"); + entity.Property(e => e.geshuiqizheng) + .HasColumnType("decimal(10, 2)") + .HasColumnName("geshuiqizheng"); + entity.Property(e => e.HjAddress) .HasMaxLength(500) .HasColumnName("hj_address") @@ -3274,6 +3572,10 @@ .HasDefaultValueSql("(getdate())") .HasComment("鍚敤鏃堕棿"); + entity.Property(e => e.IpMac) + .HasMaxLength(30) + .HasColumnName("ipmac"); + entity.Property(e => e.IsGmsb) .HasMaxLength(1) .HasColumnName("is_gmsb") @@ -3288,29 +3590,23 @@ .HasDefaultValueSql("('')") .HasComment("宸茬璁㈠悎鍚�"); + entity.Property(e => e.Istravelsubsidy) + .HasMaxLength(1) + .HasColumnName("is_travelsubsidy"); + + entity.Property(e => e.Iswdenter) + .HasMaxLength(1) + .HasColumnName("is_wdenter"); + + entity.Property(e => e.Isxmenter) + .HasMaxLength(1) + .HasColumnName("is_xmenter"); + entity.Property(e => e.IsYwjl) .HasMaxLength(1) .HasColumnName("is_ywjl") .HasDefaultValueSql("('')") .HasComment("鏄笟鍔$粡鐞�"); - - entity.Property(e => e.Isxmenter) - .HasMaxLength(1) - .HasColumnName("is_xmenter") - .HasDefaultValueSql("('')") - .HasComment("鏄」鐩綍鍏�"); - - entity.Property(e => e.Iswdenter) - .HasMaxLength(1) - .HasColumnName("is_wdenter") - .HasDefaultValueSql("('')") - .HasComment("鏄棶绛斿綍鍏�"); - - entity.Property(e => e.Istravelsubsidy) - .HasMaxLength(1) - .HasColumnName("is_travelsubsidy") - .HasDefaultValueSql("('')") - .HasComment("鏈変氦閫氳ˉ璐�"); entity.Property(e => e.Jg) .HasMaxLength(500) @@ -3318,9 +3614,17 @@ .HasDefaultValueSql("('')") .HasComment("绫嶈疮"); + entity.Property(e => e.jibensalary) + .HasColumnType("decimal(10, 2)") + .HasColumnName("jibensalary"); + entity.Property(e => e.Jinji).HasMaxLength(50); entity.Property(e => e.JinjiPhone).HasMaxLength(50); + + entity.Property(e => e.jintiesalary) + .HasColumnType("decimal(10, 2)") + .HasColumnName("jintiesalary"); entity.Property(e => e.JzAddress) .HasMaxLength(500) @@ -3335,6 +3639,10 @@ .HasColumnName("length_price") .HasDefaultValueSql("('')") .HasComment("宸ラ緞宸ヨ祫锛屽叆鑱屾弧涓�骞寸殑涓嬩竴涓湀鍙韩鍙�"); + + entity.Property(e => e.miniyearsalary) + .HasColumnType("decimal(10, 2)") + .HasColumnName("miniyearsalary"); entity.Property(e => e.Modifier) .IsRequired() @@ -3397,6 +3705,10 @@ entity.Property(e => e.School).HasMaxLength(50); + entity.Property(e => e.senioritywages) + .HasColumnType("decimal(10, 2)") + .HasColumnName("senioritywages"); + entity.Property(e => e.Sex) .HasMaxLength(1) .HasColumnName("sex") @@ -3440,6 +3752,10 @@ .HasMaxLength(2) .HasColumnName("user_type"); + entity.Property(e => e.Usernumber) + .HasMaxLength(30) + .HasColumnName("usernumber"); + entity.Property(e => e.Weixin).HasMaxLength(50); entity.Property(e => e.Zhengzhi).HasMaxLength(50); diff --git a/zhengcaioa/Services/FiPiecerateService.cs b/zhengcaioa/Services/FiPiecerateService.cs index f209fcd..562a7d8 100644 --- a/zhengcaioa/Services/FiPiecerateService.cs +++ b/zhengcaioa/Services/FiPiecerateService.cs @@ -127,13 +127,13 @@ var query = (from a in _context.FiPiecerates - - join c in listCode.Where(x => x.CodeTable == "CooperVisit" && x.CodeField == "jtype") - on a.Pieceratetype equals c.CodeSn - join d in listCode.Where(x => x.CodeTable == "fi_piecerate" && x.CodeField == "Standard") - on a.Standard equals d.CodeSn + join c in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") + on a.Standard equals c.CodeSn + + //join d in listCode.Where(x => x.CodeTable == "fi_piecerate" && x.CodeField == "Standard") + //on a.Standard equals d.CodeSn @@ -144,20 +144,21 @@ && (string.IsNullOrWhiteSpace(searchEntity.Pieceratetype) || a.Pieceratetype == searchEntity.Pieceratetype.Trim()) - + && (string.IsNullOrWhiteSpace(searchEntity.Standard) || a.Standard == searchEntity.Standard.Trim()) + select new FiPiecerateDTO { Id = a.Id, CreatedAtTime = a.CreatedAtTime, Pieceratetype = a.Pieceratetype, - PieceratetypeName = c.Comments, + PieceratetypeName = "",//c.Comments, Project = a.Project, Amount = a.Amount, Standard = a.Standard, - StandardName = d.Comments, + StandardName = c.Comments, Percent = a.Percent, @@ -214,11 +215,26 @@ { - var listPosition = _context.FiPiecerates.Where(r => r.RecStatus == "A").ToList(); + var listPosition = _context.FiPiecerates.Where(r => r.RecStatus == "A").OrderBy(x=>x.Createtime).ToList(); var list = _mapper.Map<List<FiPiecerateDTO>>(listPosition); return list; } + + /// <summary> + /// 鑾峰彇鎵�鏈夎浠堕」鐩� + /// </summary> + /// <returns></returns> + public List<FiPiecerateDTO> GetListAll() + { + + var listPosition = _context.FiPiecerates.OrderBy(x => x.Createtime).ToList(); + + var list = _mapper.Map<List<FiPiecerateDTO>>(listPosition); + return list; + } + + } } diff --git a/zhengcaioa/Services/HrJibengongziService.cs b/zhengcaioa/Services/HrJibengongziService.cs new file mode 100644 index 0000000..661461c --- /dev/null +++ b/zhengcaioa/Services/HrJibengongziService.cs @@ -0,0 +1,202 @@ +锘縰sing AutoMapper; +using DTO; +using IServices; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using zhengcaioa.Models; + + +namespace Services +{ + public class HrJibengongziService: IHrJibengongziService + { + private readonly zhengcaioaContext _context; + private readonly IMapper _mapper; + public HrJibengongziService(zhengcaioaContext context, IMapper mapper) + { + _context = context; + _mapper = mapper; + } + + public ResultEntity save(HrJibengongziDTO dto) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var model = _mapper.Map<HrJibengongzi>(dto); + if (String.IsNullOrEmpty(model.Id)) + { + model.Id = Guid.NewGuid().ToString(); + + + _context.HrJibengongzis.Add(model); + } + else + { + var updatepltRole = _context.HrJibengongzis.Find(model.Id); + updatepltRole.PostId = model.PostId; + updatepltRole.Jibengongzi = model.Jibengongzi; + updatepltRole.Baomifei = model.Baomifei; + updatepltRole.Shebaodanwei = model.Shebaodanwei; + updatepltRole.Shebaogeren = model.Shebaogeren; + updatepltRole.Quanqingjiang = model.Quanqingjiang; + updatepltRole.Dianhuabutie = model.Dianhuabutie; + + updatepltRole.Jiaotongbutie = model.Jiaotongbutie; + + + updatepltRole.Effecttime = model.Effecttime; + + updatepltRole.RecStatus = model.RecStatus; + // updatepltRole.Creater = pltRole.Creater; + //updatepltRole.Createtime = pltRole.Createtime; + updatepltRole.Modifier = model.Modifier; + updatepltRole.Modifytime = model.Modifytime; + + } + + _context.SaveChanges(); + resultEntity.ReturnID = model.Id; + resultEntity.Result = true; + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + + } + return resultEntity; + } + + public HrJibengongziDTO Get(string id) + { + var entity = _context.HrJibengongzis.Find(id); + + if (entity.RecStatus != "A") + { + entity = new HrJibengongzi(); + } + var HrJibengongziDTO = _mapper.Map<HrJibengongziDTO>(entity); + return HrJibengongziDTO; + } + + public ResultDataEntity<HrJibengongziDTO> SearchByPaging(HrJibengongziDTOSearch searchEntity) + { + ResultDataEntity<HrJibengongziDTO> data = new ResultDataEntity<HrJibengongziDTO>(); + + var listCode = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ); + + var query = (from a in _context.HrJibengongzis//.Where(x => x.RecStatus == "A") + join b in listCode.Where(x => x.CodeTable == "hr_jibengongzi" && x.CodeField == "dianhuabutie") + on a.Dianhuabutie equals b.CodeSn + into bsssss + from bbb in bsssss.DefaultIfEmpty() + + join f in _context.HrPositions + on a.PostId equals f.Id + into fsssss + from fff in fsssss.DefaultIfEmpty() + + where a.RecStatus == "A" + && (string.IsNullOrWhiteSpace(searchEntity.PostId) || a.PostId == searchEntity.PostId.Trim()) + select new HrJibengongziDTO + { + Id = a.Id, + PostId = a.PostId, + PostName = fff.PostName, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Shebaodanwei = a.Shebaodanwei, + Shebaogeren = a.Shebaogeren, + Dianhuabutie = a.Dianhuabutie, + Quanqingjiang = a.Quanqingjiang, + Jiaotongbutie = a.Jiaotongbutie, + + JibengongziName = a.Jibengongzi.HasValue? a.Jibengongzi.Value.ToString("F2"):"", + BaomifeiName = a.Baomifei.HasValue ? a.Baomifei.Value.ToString("F2") : "", + ShebaodanweiName = a.Shebaodanwei.HasValue ? a.Shebaodanwei.Value.ToString("F2") : "", + ShebaogerenName = a.Shebaogeren.HasValue ? a.Shebaogeren.Value.ToString("F2") : "", + DianhuabutieName = bbb.Comments, + QuanqingjiangName = a.Quanqingjiang.HasValue ? a.Quanqingjiang.Value.ToString("F2") : "", + JiaotongbutieName = a.Jiaotongbutie.HasValue ? a.Jiaotongbutie.Value.ToString("F2") : "", + Effecttime = a.Effecttime, + EffecttimeName = a.Effecttime.HasValue ? a.Effecttime.Value.ToString("yyyy-MM-dd") : "", + + + + + RecStatus = a.RecStatus, + Creater = a.Creater, + Createtime = a.Createtime, + Modifier = a.Modifier, + Modifytime = a.Modifytime, + + }).OrderByDescending(x => x.Modifytime).ToList(); + + + + + + + + if (searchEntity.totalrows == 0) + searchEntity.totalrows = query.Count(); + var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); + + data.LoadData(searchEntity, rolelist); + return data; + } + + public ResultEntity ModifyStatus(string id, string userid) + { + + ResultEntity result = new ResultEntity(); + result.Result = true; + + var model = _context.HrJibengongzis.Find(id); + if (model != null) + { + model.RecStatus = "D"; + model.Modifier = userid; + model.Modifytime = DateTime.Now; + _context.SaveChanges(); + } + + return result; + } + + + /// <summary> + /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� + /// </summary> + /// <returns></returns> + public List<HrJibengongziDTO> GetList() + { + + + var listPosition = _context.HrJibengongzis.Where(r => r.RecStatus == "A" ).ToList(); + + var list = _mapper.Map<List<HrJibengongziDTO>>(listPosition); + return list; + } + } +} diff --git a/zhengcaioa/Services/HrJixiaotichengService.cs b/zhengcaioa/Services/HrJixiaotichengService.cs new file mode 100644 index 0000000..e549023 --- /dev/null +++ b/zhengcaioa/Services/HrJixiaotichengService.cs @@ -0,0 +1,207 @@ +锘縰sing AutoMapper; +using DTO; +using IServices; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using zhengcaioa.Models; + + +namespace Services +{ + public class HrJixiaotichengService : IHrJixiaotichengService + { + private readonly zhengcaioaContext _context; + private readonly IMapper _mapper; + public HrJixiaotichengService(zhengcaioaContext context, IMapper mapper) + { + _context = context; + _mapper = mapper; + } + + public ResultEntity save(HrJixiaotichengDTO dto) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var model = _mapper.Map<HrJixiaoticheng>(dto); + if (String.IsNullOrEmpty(model.Id)) + { + model.Id = Guid.NewGuid().ToString(); + + + _context.HrJixiaotichengs.Add(model); + } + else + { + var updatepltRole = _context.HrJixiaotichengs.Find(model.Id); + updatepltRole.PostId = model.PostId; + updatepltRole.PiecerateId = model.PiecerateId; + updatepltRole.Tichengstandard = model.Tichengstandard; + updatepltRole.Renwustandard = model.Renwustandard; + updatepltRole.Ticheng = model.Ticheng; + updatepltRole.Renwu = model.Renwu; + + + updatepltRole.Effecttime = model.Effecttime; + + updatepltRole.RecStatus = model.RecStatus; + // updatepltRole.Creater = pltRole.Creater; + //updatepltRole.Createtime = pltRole.Createtime; + updatepltRole.Modifier = model.Modifier; + updatepltRole.Modifytime = model.Modifytime; + + } + + _context.SaveChanges(); + resultEntity.ReturnID = model.Id; + resultEntity.Result = true; + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + + } + return resultEntity; + } + + public HrJixiaotichengDTO Get(string id) + { + var entity = _context.HrJixiaotichengs.Find(id); + + if (entity.RecStatus != "A") + { + entity = new HrJixiaoticheng(); + } + var HrJixiaotichengDTO = _mapper.Map<HrJixiaotichengDTO>(entity); + return HrJixiaotichengDTO; + } + + public ResultDataEntity<HrJixiaotichengDTO> SearchByPaging(HrJixiaotichengDTOSearch searchEntity) + { + ResultDataEntity<HrJixiaotichengDTO> data = new ResultDataEntity<HrJixiaotichengDTO>(); + + var listCode = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ); + + var query = (from a in _context.HrJixiaotichengs//.Where(x => x.RecStatus == "A") + join b in listCode.Where(x => x.CodeTable == "fi_piecerate" && x.CodeField == "standard") + on a.Tichengstandard equals b.CodeSn + into bsssss + from bbb in bsssss.DefaultIfEmpty() + + join c in listCode.Where(x => x.CodeTable == "hr_jixiaoticheng" && x.CodeField == "renwustandard") + on a.Renwustandard equals c.CodeSn + into csssss + from ccc in csssss.DefaultIfEmpty() + + join f in _context.HrPositions + on a.PostId equals f.Id + into fsssss + from fff in fsssss.DefaultIfEmpty() + + join g in _context.FiPiecerates + on a.PiecerateId equals g.Id + into gsssss + from ggg in gsssss.DefaultIfEmpty() + + where a.RecStatus == "A" + && (string.IsNullOrWhiteSpace(searchEntity.PostId) || a.PostId == searchEntity.PostId.Trim()) + select new HrJixiaotichengDTO + { + Id = a.Id, + PostId = a.PostId, + PostName = fff.PostName, + PiecerateId = a.PiecerateId, + PiecerateName = ggg.Project, + Renwustandard = a.Renwustandard, + RenwustandardName = ccc.Comments, + Tichengstandard = a.Tichengstandard, + TichengstandardName = bbb.Comments, + Ticheng = a.Ticheng, + Renwu = a.Renwu, + + + TichengName = a.Ticheng.HasValue ? a.Ticheng.Value.ToString("F2") : "", + RenwuName = a.Renwu.HasValue ? a.Renwu.Value.ToString("F2") : "", + + Effecttime = a.Effecttime, + EffecttimeName = a.Effecttime.HasValue ? a.Effecttime.Value.ToString("yyyy-MM-dd") : "", + + + + + RecStatus = a.RecStatus, + Creater = a.Creater, + Createtime = a.Createtime, + Modifier = a.Modifier, + Modifytime = a.Modifytime, + + }).OrderByDescending(x => x.Modifytime).ToList(); + + + + + + + + if (searchEntity.totalrows == 0) + searchEntity.totalrows = query.Count(); + var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); + + data.LoadData(searchEntity, rolelist); + return data; + } + + public ResultEntity ModifyStatus(string id, string userid) + { + + ResultEntity result = new ResultEntity(); + result.Result = true; + + var model = _context.HrJixiaotichengs.Find(id); + if (model != null) + { + model.RecStatus = "D"; + model.Modifier = userid; + model.Modifytime = DateTime.Now; + _context.SaveChanges(); + } + + return result; + } + + + /// <summary> + /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� + /// </summary> + /// <returns></returns> + public List<HrJixiaotichengDTO> GetList() + { + + + var listPosition = _context.HrJixiaotichengs.Where(r => r.RecStatus == "A").ToList(); + + var list = _mapper.Map<List<HrJixiaotichengDTO>>(listPosition); + return list; + } + } +} diff --git a/zhengcaioa/Services/HrSalaryService.cs b/zhengcaioa/Services/HrSalaryService.cs new file mode 100644 index 0000000..b9bbfec --- /dev/null +++ b/zhengcaioa/Services/HrSalaryService.cs @@ -0,0 +1,277 @@ +锘縰sing AutoMapper; +using DTO; +using IServices; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using zhengcaioa.Models; + + +namespace Services +{ + public class HrSalaryService: IHrSalaryService + { + private readonly zhengcaioaContext _context; + private readonly IMapper _mapper; + public HrSalaryService(zhengcaioaContext context, IMapper mapper) + { + _context = context; + _mapper = mapper; + } + + public ResultEntity save(HrSalaryDTO dto) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var model = _mapper.Map<HrSalary>(dto); + if (String.IsNullOrEmpty(model.Id)) + { + model.Id = Guid.NewGuid().ToString(); + + + _context.HrSalaries.Add(model); + } + else + { + var updatepltRole = _context.HrSalaries.Find(model.Id); + updatepltRole.Userid = model.Userid; + updatepltRole.Year = model.Year; + updatepltRole.Month = model.Month; + updatepltRole.Jibengongzi = model.Jibengongzi; + updatepltRole.Baomifei = model.Baomifei; + updatepltRole.Gongzuobutie = model.Gongzuobutie; + updatepltRole.Jiabangongzi = model.Jiabangongzi; + + updatepltRole.Shebao = model.Shebao; + + + updatepltRole.Dianhuabutie = model.Dianhuabutie; + + updatepltRole.Quanqinjiang = model.Quanqinjiang; + updatepltRole.Jiaotngbutie = model.Jiaotngbutie; + updatepltRole.Jixiaoticheng = model.Jixiaoticheng; + updatepltRole.Jiangjin = model.Jiangjin; + updatepltRole.Bufagongzi = model.Bufagongzi; + updatepltRole.Shebaokou = model.Shebaokou; + updatepltRole.Geshui = model.Geshui; + updatepltRole.Dianhuafei = model.Dianhuafei; + updatepltRole.Queqin = model.Queqin; + updatepltRole.Fakuan = model.Fakuan; + updatepltRole.Peichang = model.Peichang; + updatepltRole.Jiucuo = model.Jiucuo; + updatepltRole.Daozhanggongzi = model.Daozhanggongzi; + updatepltRole.Yufagongzi = model.Yufagongzi; + updatepltRole.Yufagongziheji = model.Yufagongziheji; + + updatepltRole.Islock = model.Islock; + + + + + + updatepltRole.RecStatus = model.RecStatus; + // updatepltRole.Creater = pltRole.Creater; + //updatepltRole.Createtime = pltRole.Createtime; + updatepltRole.Modifier = model.Modifier; + updatepltRole.Modifytime = model.Modifytime; + + } + + _context.SaveChanges(); + resultEntity.ReturnID = model.Id; + resultEntity.Result = true; + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + + } + return resultEntity; + } + + public HrSalaryDTO Get(string id) + { + var entity = _context.HrSalaries.Find(id); + + if (entity.RecStatus != "A") + { + entity = new HrSalary(); + } + var HrSalaryDTO = _mapper.Map<HrSalaryDTO>(entity); + return HrSalaryDTO; + } + + public ResultDataEntity<HrSalaryDTO> SearchByPaging(HrSalaryDTOSearch searchEntity) + { + ResultDataEntity<HrSalaryDTO> data = new ResultDataEntity<HrSalaryDTO>(); + + //var listCode = (from a in _context.SysCodeDtls + // join b in _context.SysCodes + // on a.CodeId equals b.Id + // where a.RecStatus == "A" + // && b.RecStatus == "A" + // select new CodeDataEntity() + // { + // CodeId = b.Id, + // CodeTable = b.CodeTable, + // CodeField = b.CodeField, + // CodeSn = a.CodeSn, + // Comments = a.Comments, + // Contents = a.Contents, + // RecStatus = a.RecStatus, + // Sort = a.Sort + // } + // ); + + int year = 0; + int month = 0; + if (string.IsNullOrWhiteSpace(searchEntity.YearMonth)) + { + DateTime yearMonth = DateTime.Parse(searchEntity.YearMonth + "-01"); + year = yearMonth.Year; + month = yearMonth.Month; + } + var query = (from a in _context.HrSalaries//.Where(x => x.RecStatus == "A") + // join b in listCode.Where(x => x.CodeTable == "hr_jibengongzi" && x.CodeField == "dianhuabutie") + //on a.Dianhuabutie equals b.CodeSn + // into bsssss + // from bbb in bsssss.DefaultIfEmpty() + + join f in _context.PltUsers + on a.Userid equals f.Id + // into fsssss + //from fff in fsssss.DefaultIfEmpty() + + join g in _context.HrDepts + on f.DeptId equals g.Id + // into gsssss + //from ggg in gsssss.DefaultIfEmpty() + + where a.RecStatus == "A" + && (string.IsNullOrWhiteSpace(searchEntity.Usernumber) || f.Usernumber == searchEntity.Usernumber.Trim()) + && (string.IsNullOrWhiteSpace(searchEntity.DeptId) || f.DeptId == searchEntity.DeptId.Trim()) + && (string.IsNullOrWhiteSpace(searchEntity.UserName) || f.UserName.Contains(searchEntity.UserName.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.YearMonth) || ( a.Year == year && a.Month == month )) + select new HrSalaryDTO + { + Id = a.Id, + + Userid = a.Userid, + Usernumber = f.Usernumber, + UserName = f.UserName, + DeptName = g.DeptName, + Year = a.Year, + Month = a.Month, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Gongzuobutie = a.Gongzuobutie, + Jiabangongzi = a.Jiabangongzi, + + Shebao = a.Shebao, + + + Dianhuabutie = a.Dianhuabutie, + + Quanqinjiang = a.Quanqinjiang, + Jiaotngbutie = a.Jiaotngbutie, + Jixiaoticheng = a.Jixiaoticheng, + Jiangjin = a.Jiangjin, + Bufagongzi = a.Bufagongzi, + Shebaokou = a.Shebaokou, + Geshui = a.Geshui, + Dianhuafei = a.Dianhuafei, + Queqin = a.Queqin, + Fakuan = a.Fakuan, + Peichang = a.Peichang, + Jiucuo = a.Jiucuo, + Daozhanggongzi = a.Daozhanggongzi, + Yufagongzi = a.Yufagongzi, + Yufagongziheji = a.Yufagongziheji, + + + JibengongziName = a.Jibengongzi.HasValue ? a.Jibengongzi.Value.ToString("F2") : "", + BaomifeiName = a.Baomifei.HasValue ? a.Baomifei.Value.ToString("F2") : "", + GongzuobutieName = a.Gongzuobutie.HasValue ? a.Gongzuobutie.Value.ToString("F2") : "", + JiabangongziName = a.Jiabangongzi.HasValue ? a.Jiabangongzi.Value.ToString("F2") : "", + ShebaoName = a.Shebao.HasValue ? a.Shebao.Value.ToString("F2") : "", + + DianhuabutieName = a.Dianhuabutie.HasValue ? a.Dianhuabutie.Value.ToString("F2") : "", + QuanqinjiangName = a.Quanqinjiang.HasValue ? a.Quanqinjiang.Value.ToString("F2") : "", + JiaotngbutieName = a.Jiaotngbutie.HasValue ? a.Jiaotngbutie.Value.ToString("F2") : "", + JixiaotichengName = a.Jixiaoticheng.HasValue ? a.Jixiaoticheng.Value.ToString("F2") : "", + JiangjinName = a.Jiangjin.HasValue ? a.Jiangjin.Value.ToString("F2") : "", + BufagongziName = a.Bufagongzi.HasValue ? a.Bufagongzi.Value.ToString("F2") : "", + ShebaokouName = a.Shebaokou.HasValue ? a.Shebaokou.Value.ToString("F2") : "", + GeshuiName = a.Geshui.HasValue ? a.Geshui.Value.ToString("F2") : "", + DianhuafeiName = a.Dianhuafei.HasValue ? a.Dianhuafei.Value.ToString("F2") : "", + QueqinName = a.Queqin.HasValue ? a.Queqin.Value.ToString("F2") : "", + FakuanName = a.Fakuan.HasValue ? a.Fakuan.Value.ToString("F2") : "", + PeichangName = a.Peichang.HasValue ? a.Peichang.Value.ToString("F2") : "", + JiucuoName = a.Jiucuo.HasValue ? a.Jiucuo.Value.ToString("F2") : "", + DaozhanggongziName = a.Daozhanggongzi.HasValue ? a.Daozhanggongzi.Value.ToString("F2") : "", + YufagongziName = a.Yufagongzi.HasValue ? a.Yufagongzi.Value.ToString("F2") : "", + YufagongzihejiName = a.Yufagongziheji.HasValue ? a.Yufagongziheji.Value.ToString("F2") : "", + + + + Islock =a.Islock, + RecStatus = a.RecStatus, + Creater = a.Creater, + Createtime = a.Createtime, + Modifier = a.Modifier, + Modifytime = a.Modifytime, + + }).OrderByDescending(x => x.Modifytime).ToList(); + + + + + + + + if (searchEntity.totalrows == 0) + searchEntity.totalrows = query.Count(); + var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); + + data.LoadData(searchEntity, rolelist); + return data; + } + + public ResultEntity ModifyStatus(string id, string userid) + { + + ResultEntity result = new ResultEntity(); + result.Result = true; + + var model = _context.HrSalaries.Find(id); + if (model != null) + { + model.RecStatus = "D"; + model.Modifier = userid; + model.Modifytime = DateTime.Now; + _context.SaveChanges(); + } + + return result; + } + + + /// <summary> + /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� + /// </summary> + /// <returns></returns> + public List<HrSalaryDTO> GetList() + { + + + var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A").ToList(); + + var list = _mapper.Map<List<HrSalaryDTO>>(listPosition); + return list; + } + } +} diff --git a/zhengcaioa/Services/PltPageService.cs b/zhengcaioa/Services/PltPageService.cs index 6da590f..0ca1002 100644 --- a/zhengcaioa/Services/PltPageService.cs +++ b/zhengcaioa/Services/PltPageService.cs @@ -332,6 +332,7 @@ PageID = page.Id, SystemID = page.SystemId, PageName = page.PageName, + PageShortcut = page.PageShortcut, DisplaySeq = page.DisplaySeq ?? 0, PagePath = page.PagePath, PageType = page.PageType, diff --git a/zhengcaioa/Services/UserService.cs b/zhengcaioa/Services/UserService.cs index 9364f63..501d8b6 100644 --- a/zhengcaioa/Services/UserService.cs +++ b/zhengcaioa/Services/UserService.cs @@ -184,6 +184,11 @@ updatepltUser.miniyearsalary = pltUser.miniyearsalary; updatepltUser.senioritywages = pltUser.senioritywages; updatepltUser.Istravelsubsidy = pltUser.Istravelsubsidy; + updatepltUser.Beizhu = pltUser.Beizhu; + updatepltUser.baomisalary = pltUser.baomisalary; + updatepltUser.jibensalary = pltUser.jibensalary; + updatepltUser.jintiesalary = pltUser.jintiesalary; + updatepltUser.geshuiqizheng = pltUser.geshuiqizheng; } _context.SaveChanges(); @@ -261,7 +266,10 @@ into fsssss from fff in fsssss.DefaultIfEmpty() - + join h in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") + on a.Istravelsubsidy equals h.CodeSn + into hsssss + from hhh in hsssss.DefaultIfEmpty() where a.RecStatus == "A" @@ -276,6 +284,7 @@ && (string.IsNullOrWhiteSpace(searchEntity.Phone) || a.Phone.Contains(searchEntity.Phone.Trim())) && (string.IsNullOrWhiteSpace(searchEntity.Zhiwustatus) || a.Zhiwustatus == searchEntity.Zhiwustatus.Trim()) + && (string.IsNullOrWhiteSpace(searchEntity.Usernumber) || a.Usernumber == searchEntity.Usernumber.Trim()) //select a select new PltUserDTO { @@ -304,9 +313,31 @@ Modifier = a.Modifier, Modifytime = a.Modifytime, UserSn = a.UserSn, - Coler = (a.IsQdht!="A"?"red":((!a.Shebaodate.HasValue) && (a.IsGmsb != "D")? "Darkorange" : "")) + Coler = (a.IsQdht!="A"?"red":((!a.Shebaodate.HasValue) && (a.IsGmsb != "D")? "Darkorange" : "")), + IpMac = a.IpMac, + Iswdenter = a.Iswdenter, + Isxmenter = a.Isxmenter, + Usernumber = a.Usernumber, + advancewages = a.advancewages, + miniyearsalary = a.miniyearsalary, + senioritywages = a.senioritywages, + Istravelsubsidy = a.Istravelsubsidy, + Beizhu = a.Beizhu, + IstravelsubsidyName = hhh.Comments, + advancewagesName = a.advancewages.HasValue ? a.advancewages.Value.ToString("F2") : "", + miniyearsalaryName = a.miniyearsalary.HasValue ? a.miniyearsalary.Value.ToString("F2") : "", + senioritywagesName = a.senioritywages.HasValue ? a.senioritywages.Value.ToString("F2") : "", + jibensalary = a.jibensalary, + baomisalary = a.baomisalary, + jintiesalary = a.jintiesalary, + jibensalaryName = a.jibensalary.HasValue ? a.jibensalary.Value.ToString("F2") : "", + baomisalaryName = a.baomisalary.HasValue ? a.baomisalary.Value.ToString("F2") : "", + jintiesalaryName = a.jintiesalary.HasValue ? a.jintiesalary.Value.ToString("F2") : "", + geshuiqizheng = a.geshuiqizheng, + geshuiqizhengName = a.geshuiqizheng.HasValue ? a.geshuiqizheng.Value.ToString("F2") : "", + } - ).OrderBy(x => x.UserSn).ToList(); + ).OrderBy(x => x.Usernumber).ToList(); diff --git a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs index 7a9c03f..5b531dd 100644 --- a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs @@ -827,6 +827,8 @@ ViewData["curentuser"] = curentuser; using (TransactionScope scope = new TransactionScope()) { + dto.FullAttendance = 0; + dto.AbsenteeismPayment2 = 0; dto.RecStatus = "A"; if (String.IsNullOrEmpty(dto.Id)) { diff --git a/zhengcaioa/zhengcaioa/Controllers/Finance/FiPiecerateController.cs b/zhengcaioa/zhengcaioa/Controllers/Finance/FiPiecerateController.cs index 00ad5ff..5b753ea 100644 --- a/zhengcaioa/zhengcaioa/Controllers/Finance/FiPiecerateController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/Finance/FiPiecerateController.cs @@ -62,10 +62,10 @@ ViewBag.Pieceratetype = _liaotianService.GetSYScode("CooperVisit", "jtype").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); - + ViewBag.Standard = _liaotianService.GetSYScode("system", "shifou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); - + return View(); @@ -95,13 +95,13 @@ - - ViewData["Pieceratetype"] = _liaotianService.GetSYScode("CooperVisit", "jtype"); - ViewData["Standard"] = _liaotianService.GetSYScode("fi_piecerate", "standard"); + //ViewData["Pieceratetype"] = _liaotianService.GetSYScode("CooperVisit", "jtype"); + //ViewData["Standard"] = _liaotianService.GetSYScode("fi_piecerate", "standard"); + ViewData["Standard"] = _liaotianService.GetSYScode("system", "shifou"); ViewData.Model = dto; return View(); } @@ -119,6 +119,8 @@ var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); ViewData["curentuser"] = curentuser; data.RecStatus = "A"; + //data.Standard = "01"; + data.CreatedAtTime = DateTime.Now; if (String.IsNullOrEmpty(data.Id)) { data.Creater = curentuser.Id; diff --git a/zhengcaioa/zhengcaioa/Controllers/HR/HrJibengongziController.cs b/zhengcaioa/zhengcaioa/Controllers/HR/HrJibengongziController.cs new file mode 100644 index 0000000..184d084 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Controllers/HR/HrJibengongziController.cs @@ -0,0 +1,157 @@ +锘縰sing DTO; +using IServices; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using zhengcaioa.IService; +using zhengcaioa.Models; + +namespace zhengcaioa.Controllers.HR +{ + [CheckLogin] + public class HrJibengongziController : Controller + { + private readonly ILogger<HrJibengongziController> _logger; + private readonly IHrJibengongziService _hrJibengongziService; + private readonly ILiaotianService _liaotianService; + private readonly IHrPositionService _hrPositionService; + + + + public HrJibengongziController(ILogger<HrJibengongziController> logger, IHrJibengongziService hrJibengongziService, ILiaotianService liaotianService, IHrPositionService hrPositionService) + { + _logger = logger; + _hrJibengongziService = hrJibengongziService; + _liaotianService = liaotianService; + _hrPositionService = hrPositionService; + } + + + public IActionResult Index() + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + List<ActionEntity> actionlist = new List<ActionEntity>(); + ActionEntity actionEntity = new ActionEntity(); + actionEntity.OpenType = 0; + actionEntity.ActionUrl = ""; + actionEntity.ActionFun = "Search"; + actionEntity.PageIco = "fa fa-search"; + actionEntity.ActionName = "鏌ヨ"; + actionlist.Add(actionEntity); + ActionEntity actionEntity1 = new ActionEntity(); + actionEntity1.OpenType = 0; + actionEntity1.ActionUrl = ""; + actionEntity1.ActionFun = "Add"; + actionEntity1.PageIco = "fa fa-plus"; + actionEntity1.ActionName = "鏂板"; + actionlist.Add(actionEntity1); + ViewData["ActionInfo"] = actionlist; + + ViewBag.post = _hrPositionService.GetList().Select(x => new { code = x.Id, label = x.PostName }).ToList(); + return View(); + } + + + public IActionResult GetList(HrJibengongziDTOSearch search) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + //JsonResult jsonResult = new JsonResult(_liaotianService.SearchByPaging(search), new Newtonsoft.Json.Serialization.DefaultContractResolver()); + return new JsonResult(_hrJibengongziService.SearchByPaging(search)); + } + + + #region 缂栬緫 + + public ActionResult Edit(string id = null) + { + + + + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + + HrJibengongziDTO dto = new HrJibengongziDTO(); + if (!String.IsNullOrEmpty(id)) + { + dto = _hrJibengongziService.Get(id); + + } + dto.JibengongziName = dto.Jibengongzi.HasValue ? dto.Jibengongzi.Value.ToString("F2") : ""; + dto.BaomifeiName = dto.Baomifei.HasValue ? dto.Baomifei.Value.ToString("F2") : ""; + dto.ShebaodanweiName = dto.Shebaodanwei.HasValue ? dto.Shebaodanwei.Value.ToString("F2") : ""; + dto.ShebaogerenName = dto.Shebaogeren.HasValue ? dto.Shebaogeren.Value.ToString("F2") : ""; + dto.QuanqingjiangName = dto.Quanqingjiang.HasValue ? dto.Quanqingjiang.Value.ToString("F2") : ""; + dto.JiaotongbutieName = dto.Jiaotongbutie.HasValue ? dto.Jiaotongbutie.Value.ToString("F2") : ""; + dto.EffecttimeName = dto.Effecttime.HasValue ? dto.Effecttime.Value.ToString("yyyy-MM-dd") : DateTime.Now.ToString("yyyy-MM-dd"); + + + + + ViewBag.dianhuabutie = _liaotianService.GetSYScode("hr_jibengongzi", "dianhuabutie"); + ViewBag.post = _hrPositionService.GetList(); + + + + + + ViewData.Model = dto; + return View(); + } + + + + + + + + + + + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> + /// <returns></returns> + [HttpPost] + + public IActionResult Save(HrJibengongziDTO data) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + data.RecStatus = "A"; + if (String.IsNullOrEmpty(data.Id)) + { + data.Creater = curentuser.Id; + data.Createtime = DateTime.Now; + } + data.Modifier = curentuser.Id; + data.Modifytime = DateTime.Now; + + ResultEntity resultEntity = _hrJibengongziService.save(data); + + return new JsonResult(resultEntity); + } + #endregion + + /// <summary> + /// 鍒犻櫎涓讳俊鎭� + /// </summary> + /// <param name="info">瀹炰綋</param> + /// <returns></returns> + /// + + public IActionResult Nullify(string Id = "") + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + return new JsonResult(_hrJibengongziService.ModifyStatus(Id, curentuser.Id)); + } + } +} diff --git a/zhengcaioa/zhengcaioa/Controllers/HR/HrJixiaotichengController.cs b/zhengcaioa/zhengcaioa/Controllers/HR/HrJixiaotichengController.cs new file mode 100644 index 0000000..2aecacb --- /dev/null +++ b/zhengcaioa/zhengcaioa/Controllers/HR/HrJixiaotichengController.cs @@ -0,0 +1,159 @@ +锘縰sing DTO; +using IServices; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using zhengcaioa.IService; +using zhengcaioa.Models; + +namespace zhengcaioa.Controllers.HR +{ + [CheckLogin] + public class HrJixiaotichengController : Controller + { + private readonly ILogger<HrJixiaotichengController> _logger; + private readonly IHrJixiaotichengService _hrJixiaotichengService; + private readonly ILiaotianService _liaotianService; + private readonly IHrPositionService _hrPositionService; + private readonly IFiPiecerateService _fiPiecerateService; + + + + public HrJixiaotichengController(ILogger<HrJixiaotichengController> logger, IHrJixiaotichengService hrJixiaotichengService, ILiaotianService liaotianService, IHrPositionService hrPositionService + , IFiPiecerateService fiPiecerateService) + { + _logger = logger; + _hrJixiaotichengService = hrJixiaotichengService; + _liaotianService = liaotianService; + _hrPositionService = hrPositionService; + _fiPiecerateService = fiPiecerateService; + } + + public IActionResult Index() + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + List<ActionEntity> actionlist = new List<ActionEntity>(); + ActionEntity actionEntity = new ActionEntity(); + actionEntity.OpenType = 0; + actionEntity.ActionUrl = ""; + actionEntity.ActionFun = "Search"; + actionEntity.PageIco = "fa fa-search"; + actionEntity.ActionName = "鏌ヨ"; + actionlist.Add(actionEntity); + ActionEntity actionEntity1 = new ActionEntity(); + actionEntity1.OpenType = 0; + actionEntity1.ActionUrl = ""; + actionEntity1.ActionFun = "Add"; + actionEntity1.PageIco = "fa fa-plus"; + actionEntity1.ActionName = "鏂板"; + actionlist.Add(actionEntity1); + ViewData["ActionInfo"] = actionlist; + + ViewBag.post = _hrPositionService.GetList().Select(x => new { code = x.Id, label = x.PostName }).ToList(); + ViewBag.Project = _fiPiecerateService.GetList().Select(x => new { code = x.Id, label = x.Project }).ToList(); + return View(); + } + + + public IActionResult GetList(HrJixiaotichengDTOSearch search) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + //JsonResult jsonResult = new JsonResult(_liaotianService.SearchByPaging(search), new Newtonsoft.Json.Serialization.DefaultContractResolver()); + return new JsonResult(_hrJixiaotichengService.SearchByPaging(search)); + } + + + #region 缂栬緫 + + public ActionResult Edit(string id = null) + { + + + + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + + HrJixiaotichengDTO dto = new HrJixiaotichengDTO(); + if (!String.IsNullOrEmpty(id)) + { + dto = _hrJixiaotichengService.Get(id); + + } + dto.RenwuName = dto.Renwu.HasValue ? dto.Renwu.Value.ToString("F2") : ""; + dto.TichengName = dto.Ticheng.HasValue ? dto.Ticheng.Value.ToString("F2") : ""; + + dto.EffecttimeName = dto.Effecttime.HasValue ? dto.Effecttime.Value.ToString("yyyy-MM-dd") : DateTime.Now.ToString("yyyy-MM-dd"); + + + ViewBag.Project = _fiPiecerateService.GetList(); + ViewBag.post = _hrPositionService.GetList(); + + ViewBag.Tichengstandard = _liaotianService.GetSYScode("fi_piecerate", "standard"); + + ViewBag.Renwustandard = _liaotianService.GetSYScode("hr_jixiaoticheng", "renwustandard"); + + + + + ViewData.Model = dto; + return View(); + } + + + + + + + + + + + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> + /// <returns></returns> + [HttpPost] + + public IActionResult Save(HrJixiaotichengDTO data) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + data.RecStatus = "A"; + if (String.IsNullOrEmpty(data.Id)) + { + data.Creater = curentuser.Id; + data.Createtime = DateTime.Now; + } + data.Modifier = curentuser.Id; + data.Modifytime = DateTime.Now; + + ResultEntity resultEntity = _hrJixiaotichengService.save(data); + + return new JsonResult(resultEntity); + } + #endregion + + /// <summary> + /// 鍒犻櫎涓讳俊鎭� + /// </summary> + /// <param name="info">瀹炰綋</param> + /// <returns></returns> + /// + + public IActionResult Nullify(string Id = "") + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + return new JsonResult(_hrJixiaotichengService.ModifyStatus(Id, curentuser.Id)); + } + + } +} diff --git a/zhengcaioa/zhengcaioa/Controllers/UserController.cs b/zhengcaioa/zhengcaioa/Controllers/UserController.cs index 867184c..be27733 100644 --- a/zhengcaioa/zhengcaioa/Controllers/UserController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/UserController.cs @@ -423,7 +423,102 @@ ViewData.Model = dto; return View(); } + + + + + + + [CheckLogin] + public IActionResult JiBenGongZi() + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + List<ActionEntity> actionlist = new List<ActionEntity>(); + ActionEntity actionEntity = new ActionEntity(); + actionEntity.OpenType = 0; + actionEntity.ActionUrl = ""; + actionEntity.ActionFun = "Search"; + actionEntity.PageIco = "fa fa-search"; + actionEntity.ActionName = "鏌ヨ"; + actionlist.Add(actionEntity); + + ViewData["ActionInfo"] = actionlist; + ViewBag.dept = _hrDeptService.GetList().Select(x => new { code = x.Id, label = x.DeptName }).ToList(); + + return View(); + } + + + #region 淇敼澶囨敞 + [CheckLogin] + public ActionResult EditBeizhu(string id = null) + { + + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + + + ViewBag.shifou = _liaotianService.GetSYScode("system", "shifou");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + + PltUserDTO PltUserDTO = new PltUserDTO(); + PltUserDTO.Zhiwustatus = "A"; + + if (!String.IsNullOrEmpty(id)) + { + PltUserDTO = _userService.GetPltUserEntity(id); + PltUserDTO.DeptName = _hrDeptService.Get(PltUserDTO.DeptId).DeptName; + + PltUserDTO.ShiyongDateName = PltUserDTO.ShiyongDate.HasValue?PltUserDTO.ShiyongDate.Value.ToString("yyyy-MM-dd") : ""; + PltUserDTO.ShiyongDateEndName = PltUserDTO.ShiyongDateEnd.HasValue ? PltUserDTO.ShiyongDateEnd.Value.ToString("yyyy-MM-dd") : ""; + } + + ViewData.Model = PltUserDTO; + return View(); + } + + + + + + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> + /// <returns></returns> + [HttpPost] + [CheckLogin] + public string SaveBeizhu(PltUserDTO userdata) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + ResultEntity resultEntity = new ResultEntity(); + resultEntity.Result = false; + + + PltUserDTO dTO = _userService.GetPltUserEntity(userdata.Id); + + + + dTO.ShiyongDate = userdata.ShiyongDate; + dTO.ShiyongDateEnd = userdata.ShiyongDateEnd; + dTO.ShiyongPrice = userdata.ShiyongPrice; + dTO.geshuiqizheng = userdata.geshuiqizheng; + dTO.advancewages = userdata.advancewages; + dTO.miniyearsalary = userdata.miniyearsalary; + dTO.senioritywages = userdata.senioritywages; + dTO.Istravelsubsidy = userdata.Istravelsubsidy; + dTO.BasicPrice = userdata.BasicPrice; + + dTO.Modifier = curentuser.Id; + dTO.Modifytime = DateTime.Now; + + resultEntity = _userService.savePltUser(dTO); + + return JsonConvert.SerializeObject(resultEntity); + } + #endregion } } diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/AdmPieceCheckController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/AdmPieceCheckController.cs index cd0b3e4..a6f34b5 100644 --- a/zhengcaioa/zhengcaioa/Controllers/admin/AdmPieceCheckController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/admin/AdmPieceCheckController.cs @@ -63,7 +63,7 @@ - ViewBag.PayType = _liaotianService.GetSYScode("CooperVisit", "jtype").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + //ViewBag.PayType = _liaotianService.GetSYScode("CooperVisit", "jtype").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.DeptId = _hrDeptService.GetList().Select(x => new { code = x.Id, label = x.DeptName }).ToList(); @@ -101,7 +101,7 @@ ViewData["UserId"] = _userService.GetList(); ViewData["DeptId"] = _hrDeptService.GetList(); - ViewData["WorkPro"] = _fiPiecerateService.GetList(); + ViewData["WorkPro"] = _fiPiecerateService.GetList().Where(x=>x.Standard == "A").ToList(); ViewData.Model = dto; return View(); diff --git a/zhengcaioa/zhengcaioa/Startup.cs b/zhengcaioa/zhengcaioa/Startup.cs index a10a54e..182d1fc 100644 --- a/zhengcaioa/zhengcaioa/Startup.cs +++ b/zhengcaioa/zhengcaioa/Startup.cs @@ -25,6 +25,7 @@ using zhengcaioa.Model; using zhengcaioa.Models; using zhengcaioa.Service; +using zhengcaioa.Timer; namespace zhengcaioa { @@ -46,11 +47,12 @@ options.AddPolicy("any", builder => { builder.WithMethods("GET", "POST", "HEAD", "PUT", "DELETE", "OPTIONS") + .AllowAnyHeader() //.AllowCredentials()//指定处理cookie .AllowAnyOrigin(); //允许任何来源的主机访问 }); }); - + //services.AddCors(option => option.AddPolicy("cors", policy => policy.AllowAnyHeader().AllowAnyMethod().AllowCredentials().AllowAnyOrigin())); services.AddSession(options => { @@ -116,6 +118,15 @@ services.AddScoped(typeof(IAdmAttendanceDtlService), typeof(AdmAttendanceDtlService)); services.AddScoped(typeof(IAdmAttendanceService), typeof(AdmAttendanceService)); + services.AddScoped(typeof(IHrJibengongziService), typeof(HrJibengongziService)); + + services.AddScoped(typeof(IHrJixiaotichengService), typeof(HrJixiaotichengService)); + + + + //定时执行 + services.AddHostedService<TimedBackgroundService>(); + services.AddAutoMapper(typeof(AutoMapperConfigs)); services.AddUEditorService("ueditor.json", true, "wwwroot"); diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs new file mode 100644 index 0000000..1389a5e --- /dev/null +++ b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs @@ -0,0 +1,42 @@ +锘縰sing Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; +using System; +using System.IO; +using System.Threading; +using System.Threading.Tasks; + +namespace zhengcaioa.Timer +{ + public class TimedBackgroundService : BackgroundService + { + private readonly ILogger _logger; + + + public TimedBackgroundService(ILogger<TimedBackgroundService> logger) + { + _logger = logger; + } + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + _logger.LogInformation("MyServiceA is starting."); + + //stoppingToken.Register(() => File.Create($"E:\\dotnetCore\\Practice\\Practice\\{DateTime.Now.Millisecond}.txt")); + + while (!stoppingToken.IsCancellationRequested) + { + _logger.LogInformation("MyServiceA 寮�濮嬫墽琛�"); + + await Task.Delay(TimeSpan.FromMinutes(1), stoppingToken); + + _logger.LogInformation("缁х画鎵ц"); + } + + _logger.LogInformation("MyServiceA background task is stopping."); + } + + public override void Dispose() + { + base.Dispose(); + } + } +} diff --git a/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Index.cshtml b/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Index.cshtml index 117c4b6..9552c9e 100644 --- a/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Index.cshtml +++ b/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Index.cshtml @@ -4,7 +4,7 @@ } @section headerStyle{ <script type="text/javascript"> - var PayType = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.PayType))'; + @*var PayType = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.PayType))';*@ var DeptId = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.DeptId))'; loseherght = 30; @@ -31,7 +31,7 @@ dataUrl = "/AdmPieceCheck/GetList"; searchCol = [ { label: '宸ヤ綔鏃堕棿', name: 'WorkTime', labtype: 'datearea', hidden: false }, - { label: '绫诲埆', name: 'PayType', labtype: 'combox', hidden: false, data: JSON.parse(PayType), cwidth: '5%', cccwidth: '8%' }, + //{ label: '绫诲埆', name: 'PayType', labtype: 'combox', hidden: false, data: JSON.parse(PayType), cwidth: '5%', cccwidth: '8%' }, { label: '閮ㄩ棬', name: 'DeptId', labtype: 'combox', hidden: false, data: JSON.parse(DeptId), cwidth: '5%', cccwidth: '8%' }, { label: '濮撳悕', name: 'UserName', labtype: 'txt', hidden: false }, diff --git a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml index e077946..de481ee 100644 --- a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml +++ b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml @@ -3,14 +3,14 @@ @using zhengcaioa.Models; @{ - List<SysCodeDtl> Pieceratetype = ViewData["Pieceratetype"] as List<SysCodeDtl>; //琛屼笟鍒嗙被 +//List<SysCodeDtl> Pieceratetype = ViewData["Pieceratetype"] as List<SysCodeDtl>; //琛屼笟鍒嗙被 - List<SysCodeDtl> Standard = ViewData["Standard"] as List<SysCodeDtl>; //鎻愭垚鏍囧噯 +List<SysCodeDtl> Standard = ViewData["Standard"] as List<SysCodeDtl>; //鎻愭垚鏍囧噯 - + } @{ @@ -101,12 +101,12 @@ </div> <div id="div_content" class="ibox-content" style="background-color:white;"> <div class="row"> - <div class="clearfix layer-area" style="padding-bottom:15px;"> + @*<div class="clearfix layer-area" style="padding-bottom:15px;"> <label class="text-right col-sm-1 col-md-1 control-label">鍚敤鏃堕棿<i class="red">*</i></label> <div class="col-sm-2 col-md-2"> <input id="CreatedAtTime" class="form-control" label="鍚敤鏃堕棿" name="CreatedAtTime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.CreatedAtTime.ToString("yyyy/MM/dd")" readonly="readonly"> - <input type="hidden" id="Id" name="Id" value="@Model.Id" /> + </div> @@ -142,24 +142,49 @@ - </div> + </div>*@ <div class="clearfix layer-area" style="padding-bottom:15px;"> <label class="text-right col-sm-1 col-md-1 control-label">鏈嶅姟椤圭洰<i class="red">*</i></label> <div class="col-sm-2 col-md-2"> <input class="form-control" label="鏈嶅姟椤圭洰" name="Project" id="Project" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.Project"> + <input type="hidden" id="Id" name="Id" value="@Model.Id" /> + </div> + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鏄惁璁′欢鐧昏<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <select id="Standard" class="form-control" name="Standard" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in Standard) + { + @if (!item.CodeSn.Equals(Model.Standard)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + + } + } + + </select> + </div> + @*<label class="text-right col-sm-1 col-md-1 control-label">椤圭洰浠锋牸<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <input class="form-control" label="椤圭洰浠锋牸" name="Amount" id="Amount" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Amount" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div>*@ - <label class="text-right col-sm-1 col-md-1 control-label">椤圭洰浠锋牸<i class="red">*</i></label> - <div class="col-sm-2 col-md-2"> - <input class="form-control" label="椤圭洰浠锋牸" name="Amount" id="Amount" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Amount" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> - </div> - </div> - <div class="clearfix layer-area" style="padding-bottom:15px;"> + @*<div class="clearfix layer-area" style="padding-bottom:15px;"> <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎻愭垚鏍囧噯</label> @@ -191,7 +216,7 @@ <div class="col-sm-2 col-md-2"> <input class="form-control" label="鎻愭垚棰濆害" name="Percent" id="Percent" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Percent" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> </div> - </div> + </div>*@ @@ -241,7 +266,7 @@ "hideMethod": "fadeOut" }; - laydate({ elem: "#CreatedAtTime", format: 'YYYY/MM/DD', istime: false, event: "focus" }); + //laydate({ elem: "#CreatedAtTime", format: 'YYYY/MM/DD', istime: false, event: "focus" }); var id = '@Model.Id'; @@ -287,14 +312,14 @@ // 淇濆瓨宀椾綅淇℃伅 var savePosition = function () { - if ($("#CreatedAtTime").val() == '') { - toastr.warning("鍚敤鏃堕棿涓嶈兘涓虹┖"); - return; - } - if ($("#Pieceratetype").val() == '') { - toastr.warning("绫诲埆涓嶈兘涓虹┖"); - return; - } + //if ($("#CreatedAtTime").val() == '') { + // toastr.warning("鍚敤鏃堕棿涓嶈兘涓虹┖"); + // return; + //} + //if ($("#Pieceratetype").val() == '') { + // toastr.warning("绫诲埆涓嶈兘涓虹┖"); + // return; + //} @@ -302,18 +327,19 @@ toastr.warning("鏈嶅姟椤圭洰涓嶈兘涓虹┖"); return; } - if ($.trim($("#Amount").val()) == '') { - toastr.warning("椤圭洰浠锋牸涓嶈兘涓虹┖"); + if ($.trim($("#Standard").val()) == '') { + toastr.warning("鏄惁璁′欢鐧昏涓嶈兘涓虹┖"); return; } - if ($.trim($("#Standard").val()) == '') { - toastr.warning("鎻愭垚鏍囧噯涓嶈兘涓虹┖"); - return; - } - if ($.trim($("#Percent").val()) == '') { - toastr.warning("鎻愭垚棰濆害涓嶈兘涓虹┖"); - return; - } + //if ($.trim($("#Amount").val()) == '') { + // toastr.warning("椤圭洰浠锋牸涓嶈兘涓虹┖"); + // return; + //} + + //if ($.trim($("#Percent").val()) == '') { + // toastr.warning("鎻愭垚棰濆害涓嶈兘涓虹┖"); + // return; + //} //var data = { id: $("#Id").val(), StartTime:$("#StartTime").val(), Sheng: $("#Sheng").val(), job_level: $("#Job_level").val().toString(), ExistsAttachment: fileId != "" } $.ajax({ diff --git a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Index.cshtml b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Index.cshtml index 92b189d..06a45a8 100644 --- a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Index.cshtml +++ b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Index.cshtml @@ -4,16 +4,16 @@ } @section headerStyle{ <script type="text/javascript"> - + var Pieceratetype = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.Pieceratetype))'; - - + var Standard = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.Standard))'; + //loseherght = 60; dataCol = [ { label: 'id', name: 'Id', labtype: 'txt', hidden: true }, - - { label: '绫诲埆', name: 'PieceratetypeName', labtype: 'txt', hidden: false, width: 100 }, + + { label: '绫诲埆', name: 'PieceratetypeName', labtype: 'txt', hidden: true, width: 100 }, { label: '鏈嶅姟椤圭洰', name: 'Project', labtype: 'txt', hidden: false, width: 100, formatter: function (cellvalue, options, rowObject) { @@ -21,13 +21,13 @@ } }, - - { label: '鎻愭垚鏍囧噯', name: 'StandardName', labtype: 'txt', hidden: false, width: 100 }, - { label: '鎻愭垚棰濆害', name: 'Percent', labtype: 'txt', hidden: false, width: 100 }, - { - label: '鍚敤鏃堕棿', name: 'CreatedAtTimeName', labtype: 'txt', hidden: false, width: 100 }, - + { label: '鏄惁璁′欢鐧昏', name: 'StandardName', labtype: 'txt', hidden: false, width: 100 }, + { label: '鎻愭垚棰濆害', name: 'Percent', labtype: 'txt', hidden: true, width: 100 }, + { + label: '鍚敤鏃堕棿', name: 'CreatedAtTimeName', labtype: 'txt', hidden: true, width: 100 }, + + ]; @@ -38,10 +38,12 @@ - { label: '鍚敤鏃堕棿', name: 'CreatedAtTime', labtype: 'datearea', hidden: false }, - { label: '绫诲埆', name: 'Pieceratetype', labtype: 'combox', hidden: false, data: JSON.parse(Pieceratetype), cwidth: '5%', cccwidth: '8%' }, + //{ label: '鍚敤鏃堕棿', name: 'CreatedAtTime', labtype: 'datearea', hidden: false }, + //{ label: '绫诲埆', name: 'Pieceratetype', labtype: 'combox', hidden: false, data: JSON.parse(Pieceratetype), cwidth: '5%', cccwidth: '8%' }, { label: '鏈嶅姟椤圭洰', name: 'Project', labtype: 'txt', hidden: false }, - + { label: '鏄惁璁′欢鐧昏', name: 'Standard', labtype: 'combox', hidden: false, data: JSON.parse(Standard), cwidth: '5%', cccwidth: '8%' }, + + ]; var _pageAdd = function () { OpenWindow("鏂板璁′欢鏍囧噯", "98%", "90%", "/FiPiecerate/Edit/"); diff --git a/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Edit.cshtml new file mode 100644 index 0000000..9fc3256 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Edit.cshtml @@ -0,0 +1,452 @@ +锘緻model DTO.HrJibengongziDTO +@using DTO; +@using zhengcaioa.Models; +@{ + + + List<SysCodeDtl> dianhuabutie = ViewData["dianhuabutie"] as List<SysCodeDtl>; //鐗╁搧鐘舵�� + + List<HrPositionDTO> PostId = ViewData["post"] as List<HrPositionDTO>; //鐗╁搧绫诲瀷 + +} +@{ + Layout = null; +} + +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> + <meta name="description" content=""> + <meta name="author" content="ThemeBucket"> + <title>@(SiteConfig.SiteName)</title> + <link href="~/css/bootstrap.min.css" rel="stylesheet"> + <link href="~/css/font-awesome.min.css" rel="stylesheet"> + <link href="~/css/animate.min.css" rel="stylesheet"> + + @*<link href="~/css/plugins/iCheck/custom.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/chosen/chosen.css" rel="stylesheet"> + @*<link href="~/js/plugins/layer/skin/layer.css" rel="stylesheet">*@ + @*<link href="~/css/plugins/datapicker/datepicker3.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" /> + <link href="~/css/plugins/webuploader/webuploader.css" rel="stylesheet" /> + + <style type="text/css"> + .webuploader-pick { + position: relative; + display: inline-block; + cursor: pointer; + background: #00b7ee; + padding: 8px 14px 7px 14px; + color: #fff; + text-align: center; + border-radius: 3px; + overflow: hidden; + } + + div.clearfix > label { + padding-top: 8px; + } + + .chosen-container { + border-radius: 1px; + border: 1px solid #e5e6e7; + } + + .col-md-1.control-label { + padding-right: 0px; + font-weight: 400; + } + </style> + + <!-- jqgrid--> + @*<link href="~/css/plugins/jqgrid/ui.jqgrid.css" rel="stylesheet">*@ + <script language="javascript" src="~/js/jquery.min.js" type="text/javascript"></script> + <script src="~/js/bootstrap.min.js"></script> + @*<script src="~/js/plugins/bootstro/bootstro.js"></script>*@ + + <!--瀹瑰櫒--> + @*<script language="javascript" src="~/js/datehelper.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/query/jquery.query-object.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/iCheck/icheck.min.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/chosen/chosen.jquery.js" type="text/javascript"></script> + @*<script language="javascript" src="~/js/plugins/datapicker/bootstrap-datepicker.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/layer/layer.js" type="text/javascript"></script> + @*<script src="~/js/plugins/jqgrid/jquery.jqGrid.min.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/jqgrid/i18n/grid.locale-cn.js" type="text/javascript"></script>*@ + <script src="~/js/plugins/toastr/toastr.min.js" type="text/javascript"></script> + <script src="~/js/plugins/webuploader/webuploader.min.js"></script> + + <script language="javascript" src="~/js/common-layout.js" type="text/javascript"></script> + <script src="~/js/plugins/layer/laydate/laydate.js" type="text/javascript"></script> + @*<script src="~/js/plugins/iTexbox/itextbox.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/iuploader/iuploader.js"></script>*@ + <script src="~/js/TUJS.js"></script> +</head> +<body class="gray-bg" style="overflow:auto"> + <form id="formtest"> + <div class="wrapper wrapper-content" id="ibox-content" style="padding:15px;"> + <div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5> <i class="fa fa-list"></i> 鍩烘湰淇℃伅</h5> + </div> + <div id="div_content" class="ibox-content" style="background-color:white;"> + <div class="row"> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">鑱屽姟<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <select id="PostId" class="form-control" name="PostId" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in PostId) + { + @if (!item.Id.Equals(Model.PostId)) + { + <option value="@item.Id" hassubinfo="true"> + @item.PostName + </option> + } + else + { + <option value="@item.Id" hassubinfo="true" selected="selected"> + @item.PostName + </option> + } + + } + + </select> + <input type="hidden" id="Id" name="Id" value="@Model.Id" /> + </div> + + + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍩烘湰宸ヨ祫锛堝厓锛�<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="鍩烘湰宸ヨ祫锛堝厓锛�" name="Jibengongzi" id="Jibengongzi" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.JibengongziName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">淇濆瘑璐癸紙鍏冿級<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="淇濆瘑璐癸紙鍏冿級" name="Baomifei" id="Baomifei" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.BaomifeiName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + + + </div> + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">绀句繚鍏徃锛堝厓锛�<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="绀句繚鍏徃锛堝厓锛�" name="Shebaodanwei" id="Shebaodanwei" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.ShebaodanweiName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">绀句繚涓汉锛堝厓锛�<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="绀句繚涓汉锛堝厓锛�" name="Shebaogeren" id="Shebaogeren" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.ShebaogerenName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鐢佃瘽琛ヨ创锛堝厓锛�<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <select id="Dianhuabutie" class="form-control" name="Dianhuabutie" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in dianhuabutie) + { + @if (!item.CodeSn.Equals(Model.Dianhuabutie)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + + } + + </select> + </div> + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍏ㄥ嫟濂栵紙鍏冿級<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="鍏ㄥ嫟濂栵紙鍏冿級" name="Quanqingjiang" id="Quanqingjiang" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.QuanqingjiangName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">浜ら�氳ˉ璐达紙鍏冿級<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="浜ら�氳ˉ璐达紙鍏冿級" name="Jiaotongbutie" id="Jiaotongbutie" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.JiaotongbutieName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + + </div> + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + <label class="text-right col-sm-1 col-md-1 control-label">鐢熸晥鏃ユ湡<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <input id="Effecttime" class="form-control" label="鐢熸晥鏃ユ湡" name="Effecttime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.EffecttimeName" readonly="readonly"> + + </div> + </div> + + + + + + + + + </div> + + + + + + + + + + + + + + + </div> + </div> + </div> + </div> + </div> + </div> + <div class="wrapper wrapper-content" style="margin-top:0px"></div> + <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px "> + <div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="鍔熻兘鎸夐挳锛氣�滀繚瀛樷�濓紝鈥滃垹闄も��"> + <a class="btn btn-success" href="javascript:void(0)" onclick="delPosition();" style="margin-left:4px; border-radius:4px;"> + <i class="glyphicon glyphicon-remove"></i> <span class="bold">鍒犻櫎</span> + </a> + + <a class="btn btn-success" href="javascript:void(0)" onclick="savePosition();" style="margin-left:4px; border-radius:4px;"> + <i class="glyphicon glyphicon-ok"></i> <span class="bold">鎻愪氦</span> + </a> + </div> + </div> + + </form> + <!-- 閰嶇疆鏂囦欢 --> + <script type="text/javascript" src="/js/ueditor/ueditor.config.js?v=10"></script> + <!-- 缂栬緫鍣ㄦ簮鐮佹枃浠� --> + <script type="text/javascript" src="/js/ueditor/ueditor.all.min.js?v=2"></script> + <!-- 瀹炰緥鍖栫紪杈戝櫒 --> + <script type="text/javascript"> + + var ue4 = UE.getEditor('DocContent', { + initialFrameHeight: 500 + }); + @*ue4.ready(function () { + //璁剧疆缂栬緫鍣ㄧ殑鍐呭 + ue4.setContent('@Html.Raw(Model.DocContent)'); + ////鑾峰彇html鍐呭锛岃繑鍥�: <p>hello</p> + //var html = ue.getContent(); + ////鑾峰彇绾枃鏈唴瀹癸紝杩斿洖: hello + //var txt = ue.getContentTxt(); + });*@ + </script> + <script type="text/javascript"> + var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height() * 2 - 95; + $("#div_content").height(hh); + + toastr.options = { + "closeButton": true, + "debug": false, + "progressBar": true, + "positionClass": "toast-bottom-right", + "onclick": null, + "showDuration": "300", + "hideDuration": "600", + "timeOut": "4500", + "extendedTimeOut": "600", + "showEasing": "swing", + "hideEasing": "linear", + "showMethod": "fadeIn", + "hideMethod": "fadeOut" + }; + + + $("#PostId").chosen(); + + laydate({ elem: "#Effecttime", format: 'YYYY-MM-DD', istime: true, event: "focus" }); + + var id = '@Model.Id'; + + var delPosition = function () { + if (id == null || id == '') { + toastr.warning("璇峰厛淇濆瓨"); + return; + } + $.ajax({ + type: "GET", + url: "/HrJibengongzi/Nullify?id=" + id, + dataType: "json", + global: false, + data: '', + success: function (data) { + + + if (data.Result) { + // parent._afterSave(true); + parent.layer.msg('鍒犻櫎鎴愬姛', { icon: 6 }); + _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶 + } + else { + // toastr.error(""); + parent.layer.msg('鍒犻櫎澶辫触', { icon: 5 }); + } + + }, + error: function () { + if ($.isNumber(imgLoad)) { + parent.layer.close(imgLoad); + } + //toastr.error("淇濆瓨澶辫触"); + + parent.layer.msg('淇濆瓨澶辫触', { icon: 5 }); + } + }); + + } + + // 淇濆瓨宀椾綅淇℃伅 + var savePosition = function () { + + + + if ($("#PostId").val() == '') { + toastr.warning("宀椾綅涓嶈兘涓虹┖"); + return; + } + if ($("#Jibengongzi").val() == '') { + toastr.warning("鍩烘湰宸ヨ祫涓嶈兘涓虹┖"); + return; + } + if ($("#Baomifei").val() == '') { + toastr.warning("淇濆瘑璐逛笉鑳戒负绌�"); + return; + } + + if ($("#Shebaodanwei").val() == '') { + toastr.warning("绀句繚鍏徃涓嶈兘涓虹┖"); + return; + } + + if ($("#Shebaogeren").val() == '') { + toastr.warning("绀句繚涓汉涓嶈兘涓虹┖"); + return; + } + + if ($.trim($("#Dianhuabutie").val() )== '') { + toastr.warning("鐢佃瘽琛ヨ创涓嶈兘涓虹┖"); + return; + } + + + if ($.trim($("#Quanqingjiang").val()) == '') { + toastr.warning("鍏ㄥ嫟濂栦笉鑳戒负绌�"); + return; + } + + if ($.trim($("#Jiaotongbutie").val()) == '') { + toastr.warning("浜ら�氳ˉ璐翠笉鑳戒负绌�"); + return; + } + if ($.trim($("#Effecttime").val()) == '') { + toastr.warning("鐢熸晥鏃ユ湡涓嶈兘涓虹┖"); + return; + } + + + + + + + // var data = { id: $("#Id").val(), DocType: $("#DocType").val(), DocDept: $("#DocDept").val(), PublishTime: $("#PublishTime").val(), DocNo: $("#DocNo").val(), DocTitle: $("#DocTitle").val(), DocContent: ueue, DocZtc: $("#DocZtc").val(), Printtimes: $("#Printtimes").val(), DocCsdw: $("#DocCsdw").val(), PrintStatus: $("#PrintStatus").val()} + $.ajax({ + type: "POST", + url: "/HrJibengongzi/Save", + dataType: "json", + global: false, + data: $('form').serializeArray(), + success: function (data) { + + + + if (data.Result) { + // parent._afterSave(true); + parent.layer.msg('鎴愬姛淇濆瓨', { icon: 6 }); + //window.location = "/Project/add?id=" + data.ReturnID; + + + try { + _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶 + } + catch (err) { + parent._CloseTab1("/HrJibengongzi/Edit/"); + } + + } + else { + // toastr.error("澶辫触"); + parent.layer.msg(data.Message, { icon: 5 }); + } + + }, + error: function () { + + + parent.layer.msg('澶辫触', { icon: 5 }); + } + }); + } + + + + + function _pageAutoClose() { + parent.window._reloadPageData(); + var index = parent.layer.getFrameIndex(window.name); + parent.layer.isRefresh = true; + parent.layer.closeAll('loading'); + parent.layer.close(index); + return false; + } + </script> +</body> +</html> \ No newline at end of file diff --git a/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Index.cshtml b/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Index.cshtml new file mode 100644 index 0000000..db1da6c --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/HrJibengongzi/Index.cshtml @@ -0,0 +1,87 @@ +锘緻{ + ViewBag.Title = "HrJibengongzi"; + Layout = "~/Views/Shared/_Layout_Search.cshtml"; +} +@section headerStyle{ + <script type="text/javascript"> + var post = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.post))'; + + + + + dataCol = [ + { label: 'id', name: 'Id', labtype: 'txt', hidden: true }, + { + label: '鑱屽姟', name: 'PostName', labtype: 'txt', hidden: false, width: 100, + formatter: function (cellvalue, options, rowObject) { + return "<a onclick=\"OpenWindow('" + cellvalue.replace(/'/g, '') + "','98%','100%', '/HrJibengongzi/Edit?id=" + rowObject.Id + "')\" >" + cellvalue + "</a>"; + } + }, + { + label: '鍩烘湰宸ヨ祫', name: 'JibengongziName', labtype: 'txt', hidden: false, width: 100 + }, + + { + label: '淇濆瘑璐�', name: 'BaomifeiName', labtype: 'txt', hidden: false, width: 100 + + }, + { label: '绀句繚鍏徃', name: 'ShebaodanweiName', labtype: 'txt', hidden: false, width: 100 }, + + { label: '绀句繚涓汉', name: 'ShebaogerenName', labtype: 'txt', hidden: false, width: 100 }, + { label: '鐢佃瘽琛ヨ创', name: 'DianhuabutieName', labtype: 'txt', hidden: false, width: 100 }, + + { label: '鍏ㄥ嫟濂�', name: 'QuanqingjiangName', labtype: 'txt', hidden: false, width: 100 }, + { label: '浜ら�氳ˉ璐�', name: 'JiaotongbutieName', labtype: 'txt', hidden: false, width: 100 }, + { label: '鐢熸晥鏃ユ湡', name: 'EffecttimeName', labtype: 'txt', hidden: false, width: 100 }, + ]; + dataUrl = "/HrJibengongzi/GetList"; + searchCol = [ + + { label: '鑱屽姟', name: 'PostId', labtype: 'combox', hidden: false, data: JSON.parse(post), cwidth: '5%', cccwidth: '8%' }, + + + + + + + + + ]; + + + var _pageAdd = function () { + OpenWindow("鏂板鍩烘湰宸ヨ祫", "98%", "100%", "/HrJibengongzi/Edit/"); + } + + + + + var _afterSave = function (result) { + if (result) { + toastr.success("淇濆瓨鎴愬姛"); + } else { + toastr.error("淇濆瓨澶辫触"); + } + } + + var _afterDel = function (result) { + if (result) { + toastr.success("鍒犻櫎鎴愬姛"); + } else { + /**/ + toastr.error("鍒犻櫎鎴愬姛"); + /**/ + } +} + </script> +} + +@section footerScripts{ + <script type="text/javascript"> + + + + + + </script> +} diff --git a/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml new file mode 100644 index 0000000..614df19 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml @@ -0,0 +1,467 @@ +锘緻model DTO.HrJixiaotichengDTO +@using DTO; +@using zhengcaioa.Models; +@{ + + + List<SysCodeDtl> Tichengstandard = ViewData["Tichengstandard"] as List<SysCodeDtl>; //鐗╁搧鐘舵�� + + List<SysCodeDtl> Renwustandard = ViewData["Renwustandard"] as List<SysCodeDtl>; //鐗╁搧鐘舵�� + + List<HrPositionDTO> PostId = ViewData["post"] as List<HrPositionDTO>; //鑱屽姟 + + List<FiPiecerateDTO> Project = ViewData["Project"] as List<FiPiecerateDTO>; //鐗╁搧绫诲瀷 + +} +@{ + Layout = null; +} + +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> + <meta name="description" content=""> + <meta name="author" content="ThemeBucket"> + <title>@(SiteConfig.SiteName)</title> + <link href="~/css/bootstrap.min.css" rel="stylesheet"> + <link href="~/css/font-awesome.min.css" rel="stylesheet"> + <link href="~/css/animate.min.css" rel="stylesheet"> + + @*<link href="~/css/plugins/iCheck/custom.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/chosen/chosen.css" rel="stylesheet"> + @*<link href="~/js/plugins/layer/skin/layer.css" rel="stylesheet">*@ + @*<link href="~/css/plugins/datapicker/datepicker3.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" /> + <link href="~/css/plugins/webuploader/webuploader.css" rel="stylesheet" /> + + <style type="text/css"> + .webuploader-pick { + position: relative; + display: inline-block; + cursor: pointer; + background: #00b7ee; + padding: 8px 14px 7px 14px; + color: #fff; + text-align: center; + border-radius: 3px; + overflow: hidden; + } + + div.clearfix > label { + padding-top: 8px; + } + + .chosen-container { + border-radius: 1px; + border: 1px solid #e5e6e7; + } + + .col-md-1.control-label { + padding-right: 0px; + font-weight: 400; + } + </style> + + <!-- jqgrid--> + @*<link href="~/css/plugins/jqgrid/ui.jqgrid.css" rel="stylesheet">*@ + <script language="javascript" src="~/js/jquery.min.js" type="text/javascript"></script> + <script src="~/js/bootstrap.min.js"></script> + @*<script src="~/js/plugins/bootstro/bootstro.js"></script>*@ + + <!--瀹瑰櫒--> + @*<script language="javascript" src="~/js/datehelper.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/query/jquery.query-object.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/iCheck/icheck.min.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/chosen/chosen.jquery.js" type="text/javascript"></script> + @*<script language="javascript" src="~/js/plugins/datapicker/bootstrap-datepicker.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/layer/layer.js" type="text/javascript"></script> + @*<script src="~/js/plugins/jqgrid/jquery.jqGrid.min.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/jqgrid/i18n/grid.locale-cn.js" type="text/javascript"></script>*@ + <script src="~/js/plugins/toastr/toastr.min.js" type="text/javascript"></script> + <script src="~/js/plugins/webuploader/webuploader.min.js"></script> + + <script language="javascript" src="~/js/common-layout.js" type="text/javascript"></script> + <script src="~/js/plugins/layer/laydate/laydate.js" type="text/javascript"></script> + @*<script src="~/js/plugins/iTexbox/itextbox.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/iuploader/iuploader.js"></script>*@ + <script src="~/js/TUJS.js"></script> +</head> +<body class="gray-bg" style="overflow:auto"> + <form id="formtest"> + <div class="wrapper wrapper-content" id="ibox-content" style="padding:15px;"> + <div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5> <i class="fa fa-list"></i> 鍩烘湰淇℃伅</h5> + </div> + <div id="div_content" class="ibox-content" style="background-color:white;"> + <div class="row"> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">鑱屽姟<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <select id="PostId" class="form-control" name="PostId" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in PostId) + { + @if (!item.Id.Equals(Model.PostId)) + { + <option value="@item.Id" hassubinfo="true"> + @item.PostName + </option> + } + else + { + <option value="@item.Id" hassubinfo="true" selected="selected"> + @item.PostName + </option> + } + + } + + </select> + <input type="hidden" id="Id" name="Id" value="@Model.Id" /> + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">璁′欢椤圭洰<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <select id="PiecerateId" class="form-control" name="PiecerateId" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in Project) + { + @if (!item.Id.Equals(Model.PiecerateId)) + { + <option value="@item.Id" hassubinfo="true"> + @item.Project + </option> + } + else + { + <option value="@item.Id" hassubinfo="true" selected="selected"> + @item.Project + </option> + } + + } + + </select> + </div> + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎻愭垚鏍囧噯<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <select id="Tichengstandard" class="form-control" name="Tichengstandard" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in Tichengstandard) + { + @if (!item.CodeSn.Equals(Model.Tichengstandard)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + + } + + </select> + </div> + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎻愭垚<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="鎻愭垚" name="Ticheng" id="Ticheng" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.TichengName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + + + </div> + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">浠诲姟鏍囧噯<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <select id="Renwustandard" class="form-control" name="Renwustandard" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in Renwustandard) + { + @if (!item.CodeSn.Equals(Model.Renwustandard)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + + } + + </select> + </div> + + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">浠诲姟鍩烘暟<i class="red">*</i></label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <input class="form-control" label="浠诲姟鍩烘暟" name="Renwu" id="Renwu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.RenwuName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + + + </div> + + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + <label class="text-right col-sm-1 col-md-1 control-label">鐢熸晥鏃ユ湡<i class="red">*</i></label> + <div class="col-sm-2 col-md-2"> + <input id="Effecttime" class="form-control" label="鐢熸晥鏃ユ湡" name="Effecttime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.EffecttimeName" readonly="readonly"> + + </div> + </div> + + + + + + + + + </div> + + + + + + + + + + + + + + + </div> + </div> + </div> + </div> + </div> + </div> + <div class="wrapper wrapper-content" style="margin-top:0px"></div> + <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px "> + <div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="鍔熻兘鎸夐挳锛氣�滀繚瀛樷�濓紝鈥滃垹闄も��"> + <a class="btn btn-success" href="javascript:void(0)" onclick="delPosition();" style="margin-left:4px; border-radius:4px;"> + <i class="glyphicon glyphicon-remove"></i> <span class="bold">鍒犻櫎</span> + </a> + + <a class="btn btn-success" href="javascript:void(0)" onclick="savePosition();" style="margin-left:4px; border-radius:4px;"> + <i class="glyphicon glyphicon-ok"></i> <span class="bold">鎻愪氦</span> + </a> + </div> + </div> + + </form> + <!-- 閰嶇疆鏂囦欢 --> + <script type="text/javascript" src="/js/ueditor/ueditor.config.js?v=10"></script> + <!-- 缂栬緫鍣ㄦ簮鐮佹枃浠� --> + <script type="text/javascript" src="/js/ueditor/ueditor.all.min.js?v=2"></script> + <!-- 瀹炰緥鍖栫紪杈戝櫒 --> + <script type="text/javascript"> + + var ue4 = UE.getEditor('DocContent', { + initialFrameHeight: 500 + }); + @*ue4.ready(function () { + //璁剧疆缂栬緫鍣ㄧ殑鍐呭 + ue4.setContent('@Html.Raw(Model.DocContent)'); + ////鑾峰彇html鍐呭锛岃繑鍥�: <p>hello</p> + //var html = ue.getContent(); + ////鑾峰彇绾枃鏈唴瀹癸紝杩斿洖: hello + //var txt = ue.getContentTxt(); + });*@ + </script> + <script type="text/javascript"> + var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height() * 2 - 95; + $("#div_content").height(hh); + + toastr.options = { + "closeButton": true, + "debug": false, + "progressBar": true, + "positionClass": "toast-bottom-right", + "onclick": null, + "showDuration": "300", + "hideDuration": "600", + "timeOut": "4500", + "extendedTimeOut": "600", + "showEasing": "swing", + "hideEasing": "linear", + "showMethod": "fadeIn", + "hideMethod": "fadeOut" + }; + + + $("#PostId").chosen(); + $("#PiecerateId").chosen(); + + + laydate({ elem: "#Effecttime", format: 'YYYY-MM-DD', istime: true, event: "focus" }); + + var id = '@Model.Id'; + + var delPosition = function () { + if (id == null || id == '') { + toastr.warning("璇峰厛淇濆瓨"); + return; + } + $.ajax({ + type: "GET", + url: "/HrJixiaoticheng/Nullify?id=" + id, + dataType: "json", + global: false, + data: '', + success: function (data) { + + + if (data.Result) { + // parent._afterSave(true); + parent.layer.msg('鍒犻櫎鎴愬姛', { icon: 6 }); + _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶 + } + else { + // toastr.error(""); + parent.layer.msg('鍒犻櫎澶辫触', { icon: 5 }); + } + + }, + error: function () { + if ($.isNumber(imgLoad)) { + parent.layer.close(imgLoad); + } + //toastr.error("淇濆瓨澶辫触"); + + parent.layer.msg('淇濆瓨澶辫触', { icon: 5 }); + } + }); + + } + + // 淇濆瓨宀椾綅淇℃伅 + var savePosition = function () { + + + + if ($("#PostId").val() == '') { + toastr.warning("宀椾綅涓嶈兘涓虹┖"); + return; + } + if ($("#PiecerateId").val() == '') { + toastr.warning("璁′欢椤圭洰涓嶈兘涓虹┖"); + return; + } + + if ($("#Tichengstandard").val() == '') { + toastr.warning("鎻愭垚鏍囧噯涓嶈兘涓虹┖"); + return; + } + + if ($("#Ticheng").val() == '') { + toastr.warning("鎻愭垚涓嶈兘涓虹┖"); + return; + } + + if ($("#Renwustandard").val() == '') { + toastr.warning("浠诲姟鏍囧噯涓嶈兘涓虹┖"); + return; + } + + if ($.trim($("#Renwu").val() )== '') { + toastr.warning("浠诲姟鍩烘暟涓嶈兘涓虹┖"); + return; + } + + + if ($.trim($("#Effecttime").val()) == '') { + toastr.warning("鐢熸晥鏃ユ湡涓嶈兘涓虹┖"); + return; + } + + + + + + + // var data = { id: $("#Id").val(), DocType: $("#DocType").val(), DocDept: $("#DocDept").val(), PublishTime: $("#PublishTime").val(), DocNo: $("#DocNo").val(), DocTitle: $("#DocTitle").val(), DocContent: ueue, DocZtc: $("#DocZtc").val(), Printtimes: $("#Printtimes").val(), DocCsdw: $("#DocCsdw").val(), PrintStatus: $("#PrintStatus").val()} + $.ajax({ + type: "POST", + url: "/HrJixiaoticheng/Save", + dataType: "json", + global: false, + data: $('form').serializeArray(), + success: function (data) { + + + + if (data.Result) { + // parent._afterSave(true); + parent.layer.msg('鎴愬姛淇濆瓨', { icon: 6 }); + //window.location = "/Project/add?id=" + data.ReturnID; + + + try { + _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶 + } + catch (err) { + parent._CloseTab1("/HrJixiaoticheng/Edit/"); + } + + } + else { + // toastr.error("澶辫触"); + parent.layer.msg(data.Message, { icon: 5 }); + } + + }, + error: function () { + + + parent.layer.msg('澶辫触', { icon: 5 }); + } + }); + } + + + + + function _pageAutoClose() { + parent.window._reloadPageData(); + var index = parent.layer.getFrameIndex(window.name); + parent.layer.isRefresh = true; + parent.layer.closeAll('loading'); + parent.layer.close(index); + return false; + } + </script> +</body> +</html> \ No newline at end of file diff --git a/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Index.cshtml b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Index.cshtml new file mode 100644 index 0000000..4915162 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Index.cshtml @@ -0,0 +1,87 @@ +锘緻{ + ViewBag.Title = "HrJixiaoticheng"; + Layout = "~/Views/Shared/_Layout_Search.cshtml"; +} +@section headerStyle{ + <script type="text/javascript"> + var post = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.post))'; + + var Project = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.Project))'; + + + dataCol = [ + { label: 'id', name: 'Id', labtype: 'txt', hidden: true }, + { + label: '鑱屽姟', name: 'PostName', labtype: 'txt', hidden: false, width: 100, + formatter: function (cellvalue, options, rowObject) { + return "<a onclick=\"OpenWindow('" + cellvalue.replace(/'/g, '') + "','98%','100%', '/HrJixiaoticheng/Edit?id=" + rowObject.Id + "')\" >" + cellvalue + "</a>"; + } + }, + { + label: '璁′欢椤圭洰', name: 'PiecerateName', labtype: 'txt', hidden: false, width: 100 + }, + { + label: '鎻愭垚鏍囧噯', name: 'TichengstandardName', labtype: 'txt', hidden: false, width: 100 + }, + + { + label: '鎻愭垚', name: 'TichengName', labtype: 'txt', hidden: false, width: 100 + + }, + { label: '浠诲姟鏍囧噯', name: 'RenwustandardName', labtype: 'txt', hidden: false, width: 100 }, + + { label: '浠诲姟鍩烘暟', name: 'RenwuName', labtype: 'txt', hidden: false, width: 100 }, + + { label: '鐢熸晥鏃ユ湡', name: 'EffecttimeName', labtype: 'txt', hidden: false, width: 100 }, + ]; + dataUrl = "/HrJixiaoticheng/GetList"; + searchCol = [ + + { label: '鑱屽姟', name: 'PostId', labtype: 'combox', hidden: false, data: JSON.parse(post), cwidth: '5%', cccwidth: '8%' }, + { label: '璁′欢椤圭洰', name: 'PiecerateId', labtype: 'combox', hidden: false, data: JSON.parse(Project), cwidth: '5%', cccwidth: '8%' }, + + + + + + + + ]; + + + var _pageAdd = function () { + OpenWindow("鏂板缁╂晥鎻愭垚鏍囧噯", "98%", "100%", "/HrJixiaoticheng/Edit/"); + } + + + + + var _afterSave = function (result) { + if (result) { + toastr.success("淇濆瓨鎴愬姛"); + } else { + toastr.error("淇濆瓨澶辫触"); + } + } + + var _afterDel = function (result) { + if (result) { + toastr.success("鍒犻櫎鎴愬姛"); + } else { + /**/ + toastr.error("鍒犻櫎鎴愬姛"); + /**/ + } +} + </script> +} + +@section footerScripts{ + <script type="text/javascript"> + + + + + + </script> +} diff --git a/zhengcaioa/zhengcaioa/Views/Shared/_Layout_Search.cshtml b/zhengcaioa/zhengcaioa/Views/Shared/_Layout_Search.cshtml index 88157b7..6bc311d 100644 --- a/zhengcaioa/zhengcaioa/Views/Shared/_Layout_Search.cshtml +++ b/zhengcaioa/zhengcaioa/Views/Shared/_Layout_Search.cshtml @@ -36,7 +36,7 @@ </script> <script src="~/js/datehelper.js"></script> <!-- jqgrid--> - <link href="~/css/plugins/jqgrid/ui.jqgrid.css" rel="stylesheet"> + <link href="~/css/plugins/jqgrid/ui.jqgrid.css?v=111111111" rel="stylesheet"> <link href="~/css/animate.min.css" rel="stylesheet"> <link href="~/css/style.min.css" rel="stylesheet"> <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" /> @@ -57,7 +57,7 @@ <script src="~/js/plugins/search/searchtoolbar.js?v=17"></script> <script src="~/js/plugins/chosen/chosen.jquery.js"></script> <script src="~/js/plugins/iCheck/icheck.min.js"></script> - <script src="~/js/plugins/search/search.js?v=1"></script> + <script src="~/js/plugins/search/search.js?v=111111111"></script> <script src="~/js/plugins/datapicker/bootstrap-datepicker.js"></script> <script type="text/javascript" src="~/js/plugins/treeview/bootstrap-treeview.js"></script> <script src="~/js/TUJS.js"></script> @@ -69,14 +69,14 @@ <style type="text/css"> label { - - font-weight:normal; + font-weight: normal; } + th { font-weight: normal; } </style> - @RenderSection("headerStyle", false) + @RenderSection("headerStyle", false) </head> <body class="gray-bg" style="padding-top:0px; padding-left:0px; padding-right:0px; "> diff --git a/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml b/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml index aadf4c8..69abc8f 100644 --- a/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml +++ b/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml @@ -134,12 +134,12 @@ </div> - <div class="clearfix layer-area" style="padding-bottom:15px;"> + @*<div class="clearfix layer-area" style="padding-bottom:15px;"> <div class="col-sm-6 col-md-6"> <span>鍏ㄥ嫟濂�</span> <input type="number" value="@Model.FullAttendance" name="FullAttendance" id="FullAttendance" style="width:150px" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏� </div> - </div> + </div>*@ <h5 style="color:cornflowerblue;">杩熷埌鎵f:</h5> <div class="clearfix layer-area" style="padding-bottom:15px;"> @@ -156,8 +156,8 @@ <div class="clearfix layer-area" style="padding-bottom:15px;"> <div class="col-sm-6 col-md-6"> <span>杩熷埌</span><input style="width:150px" type="number" min="0" step="1" max="999999" value="@Model.Absenteeism" name="Absenteeism" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍒嗛挓璁颁负鏃峰伐 - <span>鍗婂ぉ</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.AbsenteeismPayment1" name="AbsenteeismPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏� - <span>1澶�</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.AbsenteeismPayment2" name="AbsenteeismPayment2" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏� + <span>鏃峰伐鎵f</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.AbsenteeismPayment1" name="AbsenteeismPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍊嶅伐璧� + @*<span>1澶�</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.AbsenteeismPayment2" name="AbsenteeismPayment2" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�*@ </div> </div> diff --git a/zhengcaioa/zhengcaioa/Views/User/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/User/Edit.cshtml index f59e8d5..fc4109c 100644 --- a/zhengcaioa/zhengcaioa/Views/User/Edit.cshtml +++ b/zhengcaioa/zhengcaioa/Views/User/Edit.cshtml @@ -140,7 +140,7 @@ <div class="col-sm-12"> <div class="ibox float-e-margins"> <div class="ibox-title"> - <h5><i class="fa fa-list"></i> 椤圭洰褰曞叆</h5> + <h5><i class="fa fa-list"></i> 浜哄憳褰曞叆</h5> </div> <div id="div_content" class="ibox-content" style="background-color:white;"> <div class="row"> @@ -367,7 +367,7 @@ <label class="text-right col-sm-1 col-md-1 control-label">钖祫寰呴亣 </label> <div class="col-sm-2 col-md-2"> - <input id="BasicPrice" class="form-control" label="钖祫寰呴亣" name="BasicPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.BasicPrice" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + <input id="BasicPrice" class="form-control" label="钖祫寰呴亣" name="BasicPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.BasicPrice" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> </div> <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鏄惁璐拱绀句繚 </label> @@ -408,7 +408,7 @@ </div> <label class="text-right col-sm-1 col-md-1 control-label">璇曠敤鏈熷緟閬�</label> <div class="col-sm-2 col-md-2"> - <input id="ShiyongPrice" class="form-control" label="璇曠敤鏈熷緟閬�" name="ShiyongPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.ShiyongPrice" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + <input id="ShiyongPrice" class="form-control" label="璇曠敤鏈熷緟閬�" name="ShiyongPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.ShiyongPrice" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> </div> <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鏄惁绛捐鍚堝悓 </label> @@ -475,6 +475,41 @@ </div> </div> + @*<div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">鍩烘湰宸ヨ祫 </label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="鍩烘湰宸ヨ祫" name="jibensalary" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.jibensalary" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/鏈�</label> + </div> + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">淇濆瘑璐�</label> + <div class="col-sm-2 col-md-2"> + + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="淇濆瘑璐�" name="baomisalary" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.baomisalary" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/鏈�</label> + </div> + </div> + <label class="text-right col-sm-1 col-md-1 control-label">宸ヤ綔琛ヨ创</label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="宸ヤ綔琛ヨ创" name="jintiesalary" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.jintiesalary" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/骞�</label> + </div> + + </div> + + + </div>*@ + <div class="clearfix layer-area" style="padding-bottom:15px;"> <label class="text-right col-sm-1 col-md-1 control-label">棰勫彂宸ヨ祫 </label> <div class="col-sm-2 col-md-2"> @@ -483,13 +518,13 @@ </div> <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> <label class="text-left control-label">鍏�/鏈�</label> - </div> - </div> + </div> + </div> <label class="text-right col-sm-1 col-md-1 control-label">淇濆簳骞磋柂</label> <div class="col-sm-2 col-md-2"> - - <div class="col-sm-9 col-md-9" style="padding:0"> + + <div class="col-sm-9 col-md-9" style="padding:0"> <input class="form-control" label="淇濆簳骞磋柂" name="miniyearsalary" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.miniyearsalary" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> </div> <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> @@ -504,7 +539,7 @@ <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> <label class="text-left control-label">鍏�/骞�</label> </div> - + </div> <label class="text-right col-sm-1 col-md-1 control-label">鏄惁浜ら�氳ˉ璐�</label> @@ -530,6 +565,7 @@ </div> </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> <label class="text-right col-sm-1 col-md-1 control-label">鑱旂郴鐢佃瘽<i class="red">*</i></label> <div class="col-sm-2 col-md-2"> @@ -543,7 +579,10 @@ <div class="col-sm-2 col-md-2"> <input id="Email" class="form-control" label="鐢靛瓙閭" name="Email" labtype="txt" addvisible="true" maxlength="50" editvisible="true" reg="" ismust="true" type="text" value="@Model.Email"> </div> - + <label class="text-right col-sm-1 col-md-1 control-label">涓撻」鎵i櫎</label> + <div class="col-sm-2 col-md-2"> + <input id="geshuiqizheng" class="form-control" label="涓撻」鎵i櫎" name="geshuiqizheng" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.geshuiqizheng" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> </div> <div class="clearfix layer-area" style="padding-bottom:15px;"> diff --git a/zhengcaioa/zhengcaioa/Views/User/EditBeizhu.cshtml b/zhengcaioa/zhengcaioa/Views/User/EditBeizhu.cshtml new file mode 100644 index 0000000..1947301 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/User/EditBeizhu.cshtml @@ -0,0 +1,354 @@ +锘緻model DTO.PltUserDTO +@using DTO; +@using zhengcaioa.Models; +@{ + + List<SysCodeDtl> shifou = ViewBag.shifou as List<SysCodeDtl>; //鏄惁 + + +} +@{ + Layout = null; +} + +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> + <meta name="description" content=""> + <meta name="author" content="ThemeBucket"> + <title>@(SiteConfig.SiteName)</title> + <link href="~/css/bootstrap.min.css" rel="stylesheet"> + <link href="~/css/font-awesome.min.css" rel="stylesheet"> + <link href="~/css/animate.min.css" rel="stylesheet"> + + @*<link href="~/css/plugins/iCheck/custom.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/chosen/chosen.css" rel="stylesheet"> + @*<link href="~/js/plugins/layer/skin/layer.css" rel="stylesheet">*@ + @*<link href="~/css/plugins/datapicker/datepicker3.css" rel="stylesheet">*@ + <link href="~/css/style.min.css" rel="stylesheet"> + <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" /> + <link href="~/css/plugins/webuploader/webuploader.css" rel="stylesheet" /> + + <style type="text/css"> + .webuploader-pick { + position: relative; + display: inline-block; + cursor: pointer; + background: #00b7ee; + padding: 8px 14px 7px 14px; + color: #fff; + text-align: center; + border-radius: 3px; + overflow: hidden; + } + + div.clearfix > label { + padding-top: 8px; + } + + .chosen-container { + border-radius: 1px; + border: 1px solid #e5e6e7; + } + + .col-md-1.control-label { + padding-right: 0px; + font-weight: 400; + } + </style> + + <!-- jqgrid--> + @*<link href="~/css/plugins/jqgrid/ui.jqgrid.css" rel="stylesheet">*@ + <script language="javascript" src="~/js/jquery.min.js" type="text/javascript"></script> + <script src="~/js/bootstrap.min.js"></script> + @*<script src="~/js/plugins/bootstro/bootstro.js"></script>*@ + + <!--瀹瑰櫒--> + @*<script language="javascript" src="~/js/datehelper.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/query/jquery.query-object.js" type="text/javascript"></script>*@ + @*<script language="javascript" src="~/js/plugins/iCheck/icheck.min.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/chosen/chosen.jquery.js" type="text/javascript"></script> + @*<script language="javascript" src="~/js/plugins/datapicker/bootstrap-datepicker.js" type="text/javascript"></script>*@ + <script language="javascript" src="~/js/plugins/layer/layer.js" type="text/javascript"></script> + @*<script src="~/js/plugins/jqgrid/jquery.jqGrid.min.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/jqgrid/i18n/grid.locale-cn.js" type="text/javascript"></script>*@ + <script src="~/js/plugins/toastr/toastr.min.js" type="text/javascript"></script> + <script src="~/js/plugins/webuploader/webuploader.min.js"></script> + + <script language="javascript" src="~/js/common-layout.js" type="text/javascript"></script> + <script src="~/js/plugins/layer/laydate/laydate.js" type="text/javascript"></script> + @*<script src="~/js/plugins/iTexbox/itextbox.js" type="text/javascript"></script>*@ + @*<script src="~/js/plugins/iuploader/iuploader.js"></script>*@ + <script src="~/js/TUJS.js"></script> + <link rel="stylesheet" href="~/viewerjs-master/dist/viewer.min.css"> + <script src="~/viewerjs-master/dist/viewer.min.js"></script> +</head> +<body class="gray-bg" style="overflow:auto"> + <form id="formtest"> + <div class="wrapper wrapper-content" id="ibox-content" style="padding:15px;"> + <div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5><i class="fa fa-list"></i> 鍩烘湰宸ヨ祫褰曞叆</h5> + </div> + <div id="div_content" class="ibox-content" style="background-color:white;"> + <div class="row"> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + + + <label class="text-right col-sm-1 col-md-1 control-label">宸ュ彿</label> + + <div class="col-sm-2 col-md-2"> + <div class="col-sm-12 col-md-12" style="padding:0 0 0 10px"> + <label class="text-left control-label">@Model.Usernumber</label> + </div> + <input type="hidden" id="Id" name="Id" value="@Model.Id" /> + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">濮撳悕</label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-12 col-md-12" style="padding:0 0 0 10px"> + <label class="text-left control-label">@Model.UserName</label> + </div> + + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">閮ㄩ棬</label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-12 col-md-12" style="padding:0 0 0 10px"> + <label class="text-left control-label">@Model.DeptName</label> + </div> + + </div> + <label class="text-right col-sm-1 col-md-1 control-label">钖祫寰呴亣 </label> + <div class="col-sm-2 col-md-2"> + <input id="BasicPrice" class="form-control" label="钖祫寰呴亣" name="BasicPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.BasicPrice" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">璇曠敤鏈熼檺 </label> + <div class="col-sm-2 col-md-2"> + <input id="ShiyongDate" class="form-control" label="璇曠敤鏈熼檺" name="ShiyongDate" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value='@Model.ShiyongDateName ' readonly="readonly"> + + </div> + <div class="col-sm-1 col-md-1"> + 鑷� + </div> + <div class="col-sm-2 col-md-2"> + <input id="ShiyongDateEnd" class="form-control" label="璇曠敤鏈熼檺" name="ShiyongDateEnd" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value='@Model.ShiyongDateEndName ' readonly="readonly"> + </div> + <label class="text-right col-sm-1 col-md-1 control-label">璇曠敤鏈熷緟閬�</label> + <div class="col-sm-2 col-md-2"> + <input id="ShiyongPrice" class="form-control" label="璇曠敤鏈熷緟閬�" name="ShiyongPrice" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.ShiyongPrice" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <label class="text-right col-sm-1 col-md-1 control-label">涓撻」鎵i櫎</label> + <div class="col-sm-2 col-md-2"> + <input id="geshuiqizheng" class="form-control" label="涓撻」鎵i櫎" name="geshuiqizheng" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.geshuiqizheng" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">棰勫彂宸ヨ祫 </label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="棰勫彂宸ヨ祫" name="advancewages" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.advancewages" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/鏈�</label> + </div> + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">淇濆簳骞磋柂</label> + <div class="col-sm-2 col-md-2"> + + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="淇濆簳骞磋柂" name="miniyearsalary" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.miniyearsalary" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/骞�</label> + </div> + </div> + <label class="text-right col-sm-1 col-md-1 control-label">宸ラ緞宸ヨ祫</label> + <div class="col-sm-2 col-md-2"> + <div class="col-sm-9 col-md-9" style="padding:0"> + <input class="form-control" label="宸ラ緞宸ヨ祫" name="senioritywages" labtype="txt" addvisible="true" maxlength="20" editvisible="true" reg="" ismust="true" type="text" value="@Model.senioritywages" oninput="if(value.length>8)value=value.slice(0,10)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + </div> + <div class="col-sm-3 col-md-3" style="padding:0 0 0 10px"> + <label class="text-left control-label">鍏�/骞�</label> + </div> + + </div> + + <label class="text-right col-sm-1 col-md-1 control-label">鏄惁浜ら�氳ˉ璐�</label> + <div class="col-sm-2 col-md-2" grouptype="Vdata"> + <select class="form-control" name="Istravelsubsidy" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in shifou) + { + @if (!item.CodeSn.Equals(Model.Istravelsubsidy)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + } + </select> + </div> + </div> + + + + @*<div class="clearfix layer-area" style="padding-bottom:15px;"> + <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">宸ヨ祫澶囨敞</label> + <div class="col-sm-11 col-md-11"> + <textarea class="form-control bt" id="Beizhu" name="Beizhu" title="宸ヨ祫澶囨敞" isempty="" maxlength="4000" length="long" style="resize:none;overflow-y:hidden; min-height:80px;" onpropertychange="this.style.height=this.scrollHeight + 'px'" oninput="this.style.height=this.scrollHeight + 'px'">@Model.Beizhu</textarea> + + </div> + </div>*@ + + + + + + + + + + + <div class="clearfix layer-area" style="padding-bottom:15px;height:60px;"> + </div> + + </div> + </div> + </div> + </div> + </div> + </div> + <div class="wrapper wrapper-content" style="margin-top:0px"></div> + <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px "> + <div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="鍔熻兘鎸夐挳锛氣�滀繚瀛樷�濓紝鈥滃垹闄も��"> + + + <a class="btn btn-success" href="javascript:void(0)" onclick="savePosition();" style="margin-left:4px; border-radius:4px;"> + <i class="glyphicon glyphicon-ok"></i> <span class="bold">淇濆瓨</span> + </a> + </div> + </div> + + </form> + <script type="text/javascript"> + var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height() * 2 - 45; + $("#div_content").height(hh); + + $("#ZhuanjiaList").chosen(); + toastr.options = { + "closeButton": true, + "debug": false, + "progressBar": true, + "positionClass": "toast-bottom-right", + "onclick": null, + "showDuration": "300", + "hideDuration": "600", + "timeOut": "4500", + "extendedTimeOut": "600", + "showEasing": "swing", + "hideEasing": "linear", + "showMethod": "fadeIn", + "hideMethod": "fadeOut" + }; + + laydate({ elem: "#ShiyongDate", format: 'YYYY-MM-DD', istime: false, event: "focus" }); + laydate({ elem: "#ShiyongDateEnd", format: 'YYYY-MM-DD', istime: false, event: "focus" }); + + var id = '@Model.Id'; + //var remark = document.getElementById("Beizhu"); + + //remark.style.height = remark.scrollHeight + 'px'; + + + + + + // 淇濆瓨宀椾綅淇℃伅 + var savePosition = function () { + + + + + //if ($.trim($("#Beizhu").val()) == '') { + // toastr.warning("宸ヨ祫澶囨敞涓嶈兘涓虹┖"); + // return; + //} + + $.ajax({ + type: "POST", + url: "/User/SaveBeizhu", + dataType: "json", + global: false, + data: $('form').serializeArray(), + success: function (data) { + + + + if (data.Result) { + // parent._afterSave(true); + parent.layer.msg('鎴愬姛淇濆瓨', { icon: 6 }); + //window.location = "/Project/add?id=" + data.ReturnID; + + + try { + _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶 + } + catch (err) { + parent._CloseTab1("/Project/Add"); + } + + } + else { + // toastr.error("澶辫触"); + parent.layer.msg('澶辫触' + data.Message, { icon: 5 }); + } + + }, + error: function () { + + + parent.layer.msg('澶辫触', { icon: 5 }); + } + }); + } + + + + function _pageAutoClose() { + parent.window._reloadPageData(); + var index = parent.layer.getFrameIndex(window.name); + parent.layer.isRefresh = true; + parent.layer.closeAll('loading'); + parent.layer.close(index); + return false; + } + + + </script> +</body> +</html> + + + + + + + + + diff --git a/zhengcaioa/zhengcaioa/Views/User/JiBenGongZi.cshtml b/zhengcaioa/zhengcaioa/Views/User/JiBenGongZi.cshtml new file mode 100644 index 0000000..4bdda54 --- /dev/null +++ b/zhengcaioa/zhengcaioa/Views/User/JiBenGongZi.cshtml @@ -0,0 +1,131 @@ +锘緻{ + ViewBag.Title = "User"; + Layout = "~/Views/Shared/_Layout_Search.cshtml"; +} +@section headerStyle{ + <script type="text/javascript"> + var zhiwustatusDropDown = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.zhiwustatus))'; + var dept = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.dept))'; + var post = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.post))'; + var shifou = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.shifou))'; + var sex = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.sex))'; + var isMaryed = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.isMaryed))'; + dataCol = [ + { label: 'id', name: 'Id', labtype: 'txt', hidden: true }, + { + label: '宸ュ彿', name: 'Usernumber', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '濮撳悕', name: 'UserName', labtype: 'txt', hidden: false, width: 100, + formatter: function (cellvalue, options, rowObject) { + return "<a onclick=\"OpenWindow('" + cellvalue + "','100%','98%', '/User/EditBeizhu?id=" + rowObject.Id + "')\" >" + cellvalue + "</a>"; + } + }, + + { + label: '宸ヤ綔閮ㄩ棬', name: 'DeptName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '鑱屽姟', name: 'HrPositionName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '钖祫寰呴亣', name: 'BasicPrice', labtype: 'txt', hidden: false, width: 100 + + }, + //{ + // label: '鍩烘湰宸ヨ祫', name: 'jibensalaryName', labtype: 'txt', hidden: false, width: 100 + + //}, + //{ + // label: '淇濆瘑璐�', name: 'baomisalaryName', labtype: 'txt', hidden: false, width: 100 + + //}, + //{ + // label: '宸ヤ綔琛ヨ创', name: 'jintiesalaryName', labtype: 'txt', hidden: false, width: 100 + + //}, + + { + label: '璇曠敤鏈�', name: 'ShiyongDateName', labtype: 'txt', hidden: false, width: 200 + + }, + + { + label: '璇曠敤鏈熷伐璧�', name: 'ShiyongPriceName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '棰勫彂宸ヨ祫', name: 'advancewagesName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '淇濆簳骞磋柂', name: 'miniyearsalaryName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '宸ラ緞宸ヨ祫', name: 'senioritywagesName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '鏄惁浜ら�氳ˉ璐�', name: 'IstravelsubsidyName', labtype: 'txt', hidden: false, width: 100 + + }, + { + label: '涓撻」鎵i櫎', name: 'geshuiqizhengName', labtype: 'txt', hidden: false, width: 100 + + }, + + { label: '鐘舵��', name: 'RecStatus', labtype: 'txt', hidden: true }, + { label: '鍒涘缓浜�', name: 'Creater', labtype: 'txt', hidden: true }, + { label: '鍒涘缓鏃堕棿', name: 'Createtimetxt', labtype: 'txt', hidden: true }, + { label: '淇敼浜�', name: 'Modifier', labtype: 'txt', hidden: true }, + { label: '淇敼鏃堕棿', name: 'Modifytimetxt', labtype: 'txt', hidden: true }, + { + label: '棰滆壊', name: 'Coler', labtype: 'txt', hidden: true, + formatter: function (cellvalue, options, rowObject) { + return "<span style='color:" + rowObject.Coler + ";'>" + cellvalue+"</span>"; + }}, + ]; + dataUrl = "/User/GetUserList"; + searchCol = [ + { label: '宸ュ彿', name: 'Usernumber', labtype: 'txt', hidden: false }, + { label: '宸ヤ綔閮ㄩ棬', name: 'DeptId', labtype: 'combox', hidden: false, data: JSON.parse(dept) }, + + + { label: '鑱屽伐濮撳悕', name: 'UserName', labtype: 'txt', hidden: false }, + + + + + + ]; + + var _afterSave = function (result) { + if (result) { + toastr.success("淇濆瓨鎴愬姛"); + } else { + toastr.error("淇濆瓨澶辫触"); + } + } + + var _afterDel = function (result) { + if (result) { + toastr.success("鍒犻櫎鎴愬姛"); + } else { + /**/ + toastr.error("鍒犻櫎鎴愬姛"); + /**/ + } + } + + + + + + + </script> +} + diff --git a/zhengcaioa/zhengcaioa/wwwroot/js/plugins/search/search.js b/zhengcaioa/zhengcaioa/wwwroot/js/plugins/search/search.js index 2ae13d2..51593da 100644 --- a/zhengcaioa/zhengcaioa/wwwroot/js/plugins/search/search.js +++ b/zhengcaioa/zhengcaioa/wwwroot/js/plugins/search/search.js @@ -217,6 +217,12 @@ , beforeRequest: BeforeRequest }); + //$("#jqGrid").jqGrid('setGroupHeaders', { + // useColSpanStyle: true, + // groupHeaders: [ + // { startColumnName: 'jibensalaryName', numberOfColumns: 3, titleText: '钖祫寰呴亣' } + // ] + //}); jQuery("#jqGrid").jqGrid('navGrid', "#jqGridPager", { edit: false, add: false, del: false, search: false, refresh: true }); doResize(); }); diff --git a/zhengcaioa/zhengcaioa/zhengcaioa.csproj.user b/zhengcaioa/zhengcaioa/zhengcaioa.csproj.user index 4f8b184..67fd912 100644 --- a/zhengcaioa/zhengcaioa/zhengcaioa.csproj.user +++ b/zhengcaioa/zhengcaioa/zhengcaioa.csproj.user @@ -15,6 +15,6 @@ <WebStackScaffolding_IsPartialViewSelected>False</WebStackScaffolding_IsPartialViewSelected> <WebStackScaffolding_IsReferencingScriptLibrariesSelected>False</WebStackScaffolding_IsReferencingScriptLibrariesSelected> <WebStackScaffolding_LayoutPageFile /> - <ShowAllFiles>false</ShowAllFiles> + <ShowAllFiles>true</ShowAllFiles> </PropertyGroup> </Project> \ No newline at end of file diff --git "a/\347\224\250\346\210\267\350\241\250\346\233\264\346\226\260.sql" "b/\347\224\250\346\210\267\350\241\250\346\233\264\346\226\260.sql" index 956ba54..8dff297 100644 --- "a/\347\224\250\346\210\267\350\241\250\346\233\264\346\226\260.sql" +++ "b/\347\224\250\346\210\267\350\241\250\346\233\264\346\226\260.sql" @@ -10,4 +10,36 @@ miniyearsalary decimal(10,2) null, senioritywages decimal(10,2) null, is_travelsubsidy nvarchar(1) null -go \ No newline at end of file +go + + +alter table plt_user add + +[beizhu] [nvarchar](500) NULL +go + +alter table plt_user add + +jibensalary decimal(10,2) null, +baomisalary decimal(10,2) null, +jintiesalary decimal(10,2) null + +go + + + +alter table plt_user add + +geshuiqizheng decimal(10,2) null + +go + + +INSERT [dbo].[plt_page] ([Id], [system_id], [page_name], [page_shortcut], [display_seq], [page_path], [page_method], [page_type], [page_superior], [page_ico], [open_type], [rec_status], [creater], [createtime], [modifier], [modifytime]) VALUES (N'd3f04c50-72d8-46c8-8537-b0b5b2e66a00', N'1', N'职工基本工资', NULL, 1, N'/User/JiBenGongZi', N'01', N'M', N'6a13cb10-35d9-4176-a231-8887948e059e', NULL, 0, N'A', N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-15T13:53:24.527' AS DateTime), N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-15T13:54:47.280' AS DateTime)) +go + +INSERT [dbo].[plt_page] ([Id], [system_id], [page_name], [page_shortcut], [display_seq], [page_path], [page_method], [page_type], [page_superior], [page_ico], [open_type], [rec_status], [creater], [createtime], [modifier], [modifytime]) VALUES (N'4c7fae29-974b-48e9-9519-1736af5f4d17', N'1', N'职务基本工资', N'', 2, N'/HrJibengongzi/Index', N'01', N'M', N'6a13cb10-35d9-4176-a231-8887948e059e', N'', 0, N'A', N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-17T10:38:16.583' AS DateTime), N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-17T10:38:16.583' AS DateTime)) +go + +INSERT [dbo].[plt_page] ([Id], [system_id], [page_name], [page_shortcut], [display_seq], [page_path], [page_method], [page_type], [page_superior], [page_ico], [open_type], [rec_status], [creater], [createtime], [modifier], [modifytime]) VALUES (N'e7e0363d-8215-433e-8c63-df902088b160', N'1', N'绩效提成标准', NULL, 3, N'/HrJixiaoticheng/Index', N'01', N'M', N'6a13cb10-35d9-4176-a231-8887948e059e', NULL, 0, N'A', N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-17T14:53:30.890' AS DateTime), N'e4c93811-b9b1-4998-89f5-c416ebab0c07', CAST(N'2021-06-17T14:54:01.643' AS DateTime)) +go diff --git "a/\350\200\203\345\213\244\350\256\241\347\256\227\347\232\204\350\241\250.sql" "b/\350\200\203\345\213\244\350\256\241\347\256\227\347\232\204\350\241\250.sql" index 02e1343..014e69f 100644 --- "a/\350\200\203\345\213\244\350\256\241\347\256\227\347\232\204\350\241\250.sql" +++ "b/\350\200\203\345\213\244\350\256\241\347\256\227\347\232\204\350\241\250.sql" @@ -1,27 +1,113 @@ USE [zhengcaioa] GO +/****** Object: Table [dbo].[hr_salary] Script Date: 2021/6/10 12:54:34 ******/ +SET ANSI_NULLS ON +GO + +SET QUOTED_IDENTIFIER ON +GO +IF EXISTS(Select 1 From Sysobjects Where Name='hr_salary') --查询表名costSeparateConfig是否存在 + + +drop TABLE [dbo].[hr_salary] +GO + +CREATE TABLE [dbo].[hr_salary]( + [Id] [nvarchar](50) NOT NULL, + [Userid] [nvarchar](50) NOT NULL, + [year] [int] NOT NULL DEFAULT ((0)), + [month] [int] NOT NULL DEFAULT ((0)), + + + + + + [jibengongzi] [decimal](18, 4) NULL , + [baomifei] [decimal](18, 4) NULL , + [gongzuobutie] [decimal](18, 4) NULL , + [jiabangongzi] [decimal](18, 4) NULL , + [shebao] [decimal](18, 4) NULL , + [dianhuabutie] [decimal](18, 4) NULL , + [quanqinjiang] [decimal](18, 4) NULL , + [jiaotngbutie] [decimal](18, 4) NULL , + [jixiaoticheng] [decimal](18, 4) NULL , + [jiangjin] [decimal](18, 4) NULL , + [bufagongzi] [decimal](18, 4) NULL , + + [shebaokou] [decimal](18, 4) NULL , + [geshui] [decimal](18, 4) NULL , + [dianhuafei] [decimal](18, 4) NULL , + [queqin] [decimal](18, 4) NULL , + [fakuan] [decimal](18, 4) NULL , + [peichang] [decimal](18, 4) NULL , + [jiucuo] [decimal](18, 4) NULL , + [daozhanggongzi] [decimal](18, 4) NULL , + [yufagongzi] [decimal](18, 4) NULL , + [yufagongziheji] [decimal](18, 4) NULL , + + [islock] [nvarchar](1) NOT NULL, + [rec_status] [nvarchar](1) NOT NULL, + [creater] [nvarchar](50) NOT NULL, + [createtime] [datetime] NOT NULL, + [modifier] [nvarchar](50) NOT NULL, + [modifytime] [datetime] NOT NULL, + CONSTRAINT [PK__hr_salary] PRIMARY KEY CLUSTERED +( + [Id] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] +GO + +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT ('D') FOR [islock] +GO +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT ('A') FOR [rec_status] +GO + +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT ('1') FOR [creater] +GO + +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT (getdate()) FOR [createtime] +GO + +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT ('1') FOR [modifier] +GO + +ALTER TABLE [dbo].[hr_salary] ADD DEFAULT (getdate()) FOR [modifytime] +GO + + + + + + + +USE [zhengcaioa] +GO + /****** Object: Table [dbo].[ADM_Attendance] Script Date: 2021/6/10 12:54:34 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO - +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_Attendance') --查询表名costSeparateConfig是否存在 +drop TABLE [dbo].[ADM_Attendance] +GO CREATE TABLE [dbo].[ADM_Attendance]( [Id] [nvarchar](50) NOT NULL, [Userid] [nvarchar](50) NOT NULL, [year] [int] NOT NULL DEFAULT ((0)), [month] [int] NOT NULL DEFAULT ((0)), - [yingchuqin] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [offdays] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [shijichuqin] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [qingjia] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [jiaban] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [xiaojia] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [chidao] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [zaotui] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [kuanggong] [decimal](18, 2) NOT NULL DEFAULT ((0)), + [yingchuqin] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [offdays] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [shijichuqin] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [qingjia] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [jiaban] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [xiaojia] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [chidao] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [zaotui] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [kuanggong] [decimal](18, 4) NOT NULL DEFAULT ((0)), [islock] [nvarchar](1) NOT NULL, [rec_status] [nvarchar](1) NOT NULL, @@ -65,7 +151,9 @@ SET QUOTED_IDENTIFIER ON GO - +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_Attendance_dtl') --查询表名costSeparateConfig是否存在 +drop TABLE [dbo].[ADM_Attendance_dtl] +GO CREATE TABLE [dbo].[ADM_Attendance_dtl]( [Id] [nvarchar](50) NOT NULL, [attendance_id] [nvarchar](50) NOT NULL, @@ -76,16 +164,16 @@ [AfternoonOut] [datetime] NULL, [OvertimeIn] [datetime] NULL, [OvertimeOut] [datetime] NULL, - [qingjia] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [xiaojia] [decimal](18, 2) NOT NULL DEFAULT ((0)), + [qingjia] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [xiaojia] [decimal](18, 4) NOT NULL DEFAULT ((0)), [rec_status] [nvarchar](1) NOT NULL, [creater] [nvarchar](50) NOT NULL, [createtime] [datetime] NOT NULL, [modifier] [nvarchar](50) NOT NULL, [modifytime] [datetime] NOT NULL, - [chidaofenzhong] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [zaotuifenzhong] [decimal](18, 2) NOT NULL DEFAULT ((0)), - [kuanggongtianshu] [decimal](18, 2) NOT NULL DEFAULT ((0)), + [chidaofenzhong] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [zaotuifenzhong] [decimal](18, 4) NOT NULL DEFAULT ((0)), + [kuanggongtianshu] [decimal](18, 4) NOT NULL DEFAULT ((0)), CONSTRAINT [PK__ADM_Attendance_dtl] PRIMARY KEY CLUSTERED ( [Id] ASC diff --git "a/\350\241\250\344\277\256\346\224\271.sql" "b/\350\241\250\344\277\256\346\224\271.sql" index 4b263e2..38629a9 100644 --- "a/\350\241\250\344\277\256\346\224\271.sql" +++ "b/\350\241\250\344\277\256\346\224\271.sql" @@ -1,12 +1,178 @@ USE [zhengcaioa] GO +/****** Object: Table [dbo].[hr_jixiaoticheng] Script Date: 2021/6/9 14:15:04 ******/ +SET ANSI_NULLS ON +GO + +SET QUOTED_IDENTIFIER ON +GO +IF EXISTS(Select 1 From Sysobjects Where Name='hr_jixiaoticheng') --查询表名costSeparateConfig是否存在 +drop table [hr_jixiaoticheng] +GO + +CREATE TABLE [dbo].[hr_jixiaoticheng]( + [Id] [nvarchar](50) NOT NULL, + [post_id] [nvarchar](50) NULL, + [piecerate_id] [nvarchar](50) NULL, + [tichengstandard] [nvarchar](50) NULL, + [renwustandard] [nvarchar](50) NULL, + + [ticheng] [money] NULL, + [renwu] [money] NULL, + + + [effecttime] [datetime] NULL, + + [rec_status] [nvarchar](1) NOT NULL, + [creater] [nvarchar](50) NOT NULL, + [createtime] [datetime] NOT NULL, + [modifier] [nvarchar](50) NOT NULL, + [modifytime] [datetime] NOT NULL, + CONSTRAINT [PK_hr_jixiaoticheng] PRIMARY KEY CLUSTERED +( + [Id] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] +GO + +ALTER TABLE [dbo].[hr_jixiaoticheng] ADD DEFAULT ('A') FOR [rec_status] +GO + +ALTER TABLE [dbo].[hr_jixiaoticheng] ADD DEFAULT ('1') FOR [creater] +GO + +ALTER TABLE [dbo].[hr_jixiaoticheng] ADD DEFAULT (getdate()) FOR [createtime] +GO + +ALTER TABLE [dbo].[hr_jixiaoticheng] ADD DEFAULT ('1') FOR [modifier] +GO + +ALTER TABLE [dbo].[hr_jixiaoticheng] ADD DEFAULT (getdate()) FOR [modifytime] +GO + + + + + + +USE [zhengcaioa] +GO + +/****** Object: Table [dbo].[hr_jibengongzi] Script Date: 2021/6/9 14:15:04 ******/ +SET ANSI_NULLS ON +GO + +SET QUOTED_IDENTIFIER ON +GO +IF EXISTS(Select 1 From Sysobjects Where Name='hr_jibengongzi') --查询表名costSeparateConfig是否存在 +drop table [hr_jibengongzi] +GO + +CREATE TABLE [dbo].[hr_jibengongzi]( + [Id] [nvarchar](50) NOT NULL, + [post_id] [nvarchar](50) NULL, + [jibengongzi] [money] NULL, + [baomifei] [money] NULL, + [shebaodanwei] [money] NULL, + [shebaogeren] [money] NULL, + [dianhuabutie] [nvarchar](50) NULL, + [quanqingjiang] [money] NULL, + [jiaotongbutie] [money] NULL, + + [effecttime] [datetime] NULL, + + [rec_status] [nvarchar](1) NOT NULL, + [creater] [nvarchar](50) NOT NULL, + [createtime] [datetime] NOT NULL, + [modifier] [nvarchar](50) NOT NULL, + [modifytime] [datetime] NOT NULL, + CONSTRAINT [PK_hr_jibengongzi] PRIMARY KEY CLUSTERED +( + [Id] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] +GO + +ALTER TABLE [dbo].[hr_jibengongzi] ADD DEFAULT ('A') FOR [rec_status] +GO + +ALTER TABLE [dbo].[hr_jibengongzi] ADD DEFAULT ('1') FOR [creater] +GO + +ALTER TABLE [dbo].[hr_jibengongzi] ADD DEFAULT (getdate()) FOR [createtime] +GO + +ALTER TABLE [dbo].[hr_jibengongzi] ADD DEFAULT ('1') FOR [modifier] +GO + +ALTER TABLE [dbo].[hr_jibengongzi] ADD DEFAULT (getdate()) FOR [modifytime] +GO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +USE [zhengcaioa] +GO + /****** Object: Table [dbo].[ADM_AttendanceRules_dtl] Script Date: 2021/6/9 14:15:04 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_AttendanceRules_dtl') --查询表名costSeparateConfig是否存在 drop table [ADM_AttendanceRules_dtl] GO @@ -45,26 +211,6 @@ - - - - - - - - - - - - - - - - - - - - USE [zhengcaioa] GO @@ -74,6 +220,7 @@ SET QUOTED_IDENTIFIER ON GO +IF EXISTS(Select 1 From Sysobjects Where Name='fi_account_record') --查询表名costSeparateConfig是否存在 drop table [fi_account_record] GO @@ -129,6 +276,7 @@ SET QUOTED_IDENTIFIER ON GO +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_AskLeave') --查询表名costSeparateConfig是否存在 drop table [ADM_AskLeave] GO CREATE TABLE [dbo].[ADM_AskLeave]( @@ -225,7 +373,7 @@ SET QUOTED_IDENTIFIER ON GO - +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_AskLeaveOff') --查询表名costSeparateConfig是否存在 drop table [ADM_AskLeaveOff] GO @@ -313,7 +461,7 @@ SET QUOTED_IDENTIFIER ON GO - +IF EXISTS(Select 1 From Sysobjects Where Name='ADM_AttendanceRules') --查询表名costSeparateConfig是否存在 drop table [ADM_AttendanceRules] GO @@ -441,50 +589,6 @@ -USE [zhengcaioa] -GO - -/****** Object: Table [dbo].[ADM_AttendanceRules_dtl] Script Date: 2021/6/7 16:55:36 ******/ -SET ANSI_NULLS ON -GO - -SET QUOTED_IDENTIFIER ON -GO - -drop table [ADM_AttendanceRules_dtl] -GO - -CREATE TABLE [dbo].[ADM_AttendanceRules_dtl]( - [Id] [nvarchar](50) NOT NULL, - [pid] [nvarchar](50) NULL, - [value_start] [nvarchar](50) NULL, - [value_end] [nvarchar](50) NULL, - [Name] [nvarchar](200) NULL, - [rec_status] [nvarchar](1) NOT NULL, - [creater] [nvarchar](50) NOT NULL, - [createtime] [datetime] NOT NULL, - [modifier] [nvarchar](50) NOT NULL, - [modifytime] [datetime] NOT NULL, - CONSTRAINT [PK_ADM_AttendanceRules_dtl] PRIMARY KEY CLUSTERED -( - [Id] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] -) ON [PRIMARY] -GO - -ALTER TABLE [dbo].[ADM_AttendanceRules_dtl] ADD DEFAULT ('A') FOR [rec_status] -GO - -ALTER TABLE [dbo].[ADM_AttendanceRules_dtl] ADD DEFAULT ('1') FOR [creater] -GO - -ALTER TABLE [dbo].[ADM_AttendanceRules_dtl] ADD DEFAULT (getdate()) FOR [createtime] -GO - -ALTER TABLE [dbo].[ADM_AttendanceRules_dtl] ADD DEFAULT ('1') FOR [modifier] -GO - -ALTER TABLE [dbo].[ADM_AttendanceRules_dtl] ADD DEFAULT (getdate()) FOR [modifytime] -GO + -- Gitblit v1.9.1