From ce50650dbd08bddfa53ef8ab592a477761633e3d Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期一, 26 十二月 2022 14:36:52 +0800
Subject: [PATCH] 采购公告录入                每个月220个    采购公告,  自己手动找的录入的采购公告

---
 zhengcaioa/zhengcaioa/Views/CooperOrder/Printtousushu.cshtml        |    4 
 zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Edit.cshtml              |  108 +-
 zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs  |  105 ++
 zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml                  |    4 
 zhengcaioa/zhengcaioa/Views/CooperatecustomCustomer/Edit.cshtml     |    4 
 zhengcaioa/zhengcaioa/Startup.cs                                    |    4 
 zhengcaioa/zhengcaioa/Views/AdmDocDoc/Edit.cshtml                   |    2 
 zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/Edit.cshtml         |    2 
 zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Ruku.cshtml              |    4 
 zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/EditCustomer.cshtml |    2 
 zhengcaioa/zhengcaioa/Views/Project/indexZhengfuProject.cshtml      |  253 ++++++
 zhengcaioa/zhengcaioa/Views/CooperOrder/PrintZhiyihan.cshtml        |    4 
 zhengcaioa/zhengcaioa/Controllers/ProjectController.cs              |  315 ++++++++
 zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml            |   46 
 zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml                 |  148 +-
 zhengcaioa/zhengcaioa/Views/CooperOrder/Chedan.cshtml               |    2 
 zhengcaioa/Services/ProjectService.cs                               |  350 +++++++++
 zhengcaioa/zhengcaioa/Views/AdmBreakPrecedent/Edit.cshtml           |    2 
 zhengcaioa/zhengcaioa/Views/Systemsetting/Edit.cshtml               |   22 
 zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs |   28 
 zhengcaioa/DTO/eswebcrawler.cs                                      |   39 +
 zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Edit.cshtml               |    4 
 zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml             |    4 
 zhengcaioa/zhengcaioa/Views/Project/ADDZhengfuProject.cshtml        |  681 +++++++++++++++++
 zhengcaioa/IServices/IProjectService.cs                             |   11 
 zhengcaioa/Services/IntentionVisitService.cs                        |    4 
 zhengcaioa/DTO/WebCrawler/ZhengfuProjectDTO.cs                      |   32 
 zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Chuku.cshtml             |    4 
 zhengcaioa/zhengcaioa/Views/OrderBanci/EditDtl.cshtml               |    2 
 zhengcaioa/zhengcaioa/appsettings.Development.json                  |    3 
 zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs               |   50 +
 zhengcaioa/Services/IntentionCustomerService.cs                     |   10 
 zhengcaioa/zhengcaioa/Views/ServiceCharge/Edit.cshtml               |    2 
 zhengcaioa/zhengcaioa/appsettings.json                              |    3 
 34 files changed, 2,042 insertions(+), 216 deletions(-)

diff --git a/zhengcaioa/DTO/WebCrawler/ZhengfuProjectDTO.cs b/zhengcaioa/DTO/WebCrawler/ZhengfuProjectDTO.cs
index a096f5a..ff83931 100644
--- a/zhengcaioa/DTO/WebCrawler/ZhengfuProjectDTO.cs
+++ b/zhengcaioa/DTO/WebCrawler/ZhengfuProjectDTO.cs
@@ -8,11 +8,15 @@
     {
         public string Id { get; set; }
         public DateTime NoticeTime { get; set; }
+        public string NoticeTimeName { get; set; }
         public string Sheng { get; set; }
         public string City { get; set; }
         public string RegionCode { get; set; }
+        public string ShengName { get; set; }
         public string Cgfs { get; set; }
+        public string CgfsName { get; set; }
         public string Gglx { get; set; }
+        public string GglxName { get; set; }
         public string OpenTenderCode { get; set; }
         public string Title { get; set; }
         public string Shorttitle { get; set; }
@@ -20,14 +24,42 @@
         public string Remark { get; set; }
         public string RecStatus { get; set; }
         public string Creater { get; set; }
+        public string CreaterName { get; set; }
         public DateTime Createtime { get; set; }
         public string Modifier { get; set; }
         public DateTime Modifytime { get; set; }
         public string Content { get; set; }
+        public string Content1 { get; set; }
         public string Pingmu { get; set; }
         public string Purchaser { get; set; }
         public decimal? Budget { get; set; }
         public string Agency { get; set; }
         public string AgencyCode { get; set; }
+        public DateTime? OpenTenderTime { get; set; }
+    }
+
+    public class ZhengfuProjectDTOSearch : SearchEntity
+    {
+        public string StartTime { get; set; }
+
+
+
+        public string Createtime { get; set; }
+        public string Creater { get; set; }
+
+        public string Sheng { get; set; }
+        public string City { get; set; }
+        public string AreaId { get; set; }
+
+        public string Cgfs { get; set; }
+        public string Gglx { get; set; }
+
+        public string Number { get; set; }
+        public string Name { get; set; }
+
+
+
+         
+
     }
 }
diff --git a/zhengcaioa/DTO/eswebcrawler.cs b/zhengcaioa/DTO/eswebcrawler.cs
new file mode 100644
index 0000000..f331360
--- /dev/null
+++ b/zhengcaioa/DTO/eswebcrawler.cs
@@ -0,0 +1,39 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace DTO
+{
+    public class eswebcrawler
+    {
+        public string Id { get; set; }
+
+        public string noticeTime { get; set; }
+        public string sheng { get; set; }
+        public string shengName { get; set; }
+        public string city { get; set; }
+        public string cityName { get; set; }
+
+        public string regionCode { get; set; }
+
+        public string regionName { get; set; }
+
+        public string cgfs { get; set; }
+        public string cgfsName { get; set; }
+        public string gglx { get; set; }
+        public string gglxName { get; set; }
+        public string openTenderCode { get; set; }
+
+        public string title { get; set; }
+        public string shorttitle { get; set; }
+        public string pageurl { get; set; }
+        public string pingmu { get; set; }
+        public string pingmuName { get; set; }
+        public string purchaser { get; set; }
+        public string budget { get; set; }
+        public string agency { get; set; }
+        public string agencyCode { get; set; }
+        public string modifyTime { get; set; }
+        public string openTenderTime { get; set; }
+    }
+}
diff --git a/zhengcaioa/IServices/IProjectService.cs b/zhengcaioa/IServices/IProjectService.cs
index 3af513d..8586fe5 100644
--- a/zhengcaioa/IServices/IProjectService.cs
+++ b/zhengcaioa/IServices/IProjectService.cs
@@ -1,4 +1,5 @@
 锘縰sing DTO;
+using DTO.WebCrawler;
 using Microsoft.AspNetCore.Mvc.Rendering;
 using System;
 using System.Collections.Generic;
@@ -39,7 +40,7 @@
 
         List<ProjectDTO> GetListsalary(string userid, DateTime datemin, DateTime datemax);
 
-
+        List<ZhengfuProjectDTO> GetcaigougonggaoListsalary(string userid, DateTime datemin, DateTime datemax);
 
         ResultEntity saveZxdsfxl(ZxdsfxlDTO zxdsfxl);
 
@@ -49,5 +50,13 @@
 
         ResultEntity savetousu(string tousustatus, DateTime? tousushijian, string tousuchengli, string projiectid, string mingxiid, string type);
 
+
+        ResultDataEntity<ZhengfuProjectDTO> SearchByPagingCaigougonggao(ZhengfuProjectDTOSearch searchEntity);
+
+        ZhengfuProjectDTO GetZhengfuProjectDTO(string id);
+
+        ResultEntity saveZhengfuProjectDTO(ZhengfuProjectDTO dto);
+
+        ResultEntity GetZhengfuProjectDTOByPageurl(string Pageurl,string id);
     }
 }
diff --git a/zhengcaioa/Services/IntentionCustomerService.cs b/zhengcaioa/Services/IntentionCustomerService.cs
index 540eeb7..4d9b9a9 100644
--- a/zhengcaioa/Services/IntentionCustomerService.cs
+++ b/zhengcaioa/Services/IntentionCustomerService.cs
@@ -301,21 +301,21 @@
                                  Zuijinzhuizongtime = a.Zuijinzhuizongtime,
                                  ZuijinzhuizongtimeName = a.Zuijinzhuizongtime.HasValue ? a.Zuijinzhuizongtime.Value.ToString("yyyy-MM-dd") : "",
                              }
-                    ).OrderByDescending(x => x.Modifytime).ToList();
+                    );
 
             if (!string.IsNullOrWhiteSpace(searchEntity.Shifouweixin))
             {
-                query = query.Where( a=>a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim()).ToList();
+                query = query.Where( a=>a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim());
             }
             if (!string.IsNullOrWhiteSpace(searchEntity.ShifouDianhua))
             {
                 if (searchEntity.ShifouDianhua != "A")
                 {
-                    query = query.Where(a => a.Tel == null ||  a.Tel == "").ToList();
+                    query = query.Where(a => a.Tel == null ||  a.Tel == "");
                 }
                 else
                 {
-                    query = query.Where(a => a.Tel != null && a.Tel != "").ToList();
+                    query = query.Where(a => a.Tel != null && a.Tel != "");
                 }
                 
             }
@@ -323,7 +323,7 @@
 
         //if (searchEntity.totalrows == 0)
             searchEntity.totalrows = query.Count();
-        var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+        var lianlist = query.OrderByDescending(x => x.Modifytime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
         data.LoadData(searchEntity, lianlist);
         return data;
     }
diff --git a/zhengcaioa/Services/IntentionVisitService.cs b/zhengcaioa/Services/IntentionVisitService.cs
index 31c5e9b..c8cc0fa 100644
--- a/zhengcaioa/Services/IntentionVisitService.cs
+++ b/zhengcaioa/Services/IntentionVisitService.cs
@@ -227,13 +227,13 @@
                              VistimeName = a.Vistime.ToString("yyyy-MM-dd"),
                              DuanxinNeirong = a.DuanxinNeirong,
                          }
-                ).OrderByDescending(x => x.Vistime).ToList();
+                );
 
 
 
             //if (searchEntity.totalrows == 0)
                 searchEntity.totalrows = query.Count();
-            var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+            var lianlist = query.OrderByDescending(x => x.Vistime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
             data.LoadData(searchEntity, lianlist);
             return data;
         }
diff --git a/zhengcaioa/Services/ProjectService.cs b/zhengcaioa/Services/ProjectService.cs
index 03221d8..6fcde97 100644
--- a/zhengcaioa/Services/ProjectService.cs
+++ b/zhengcaioa/Services/ProjectService.cs
@@ -5,6 +5,7 @@
 using AutoMapper;
 using CommonToolsCore;
 using DTO;
+using DTO.WebCrawler;
 using IServices;
 using Microsoft.AspNetCore.Mvc.Rendering;
 using Microsoft.EntityFrameworkCore;
@@ -16,10 +17,12 @@
     {
         private readonly zhengcaioaContext _context;
         private readonly IMapper _mapper;
-        public ProjectService(zhengcaioaContext context, IMapper mapper)
+        private readonly WebCrawlerContext _webcontext;
+        public ProjectService(zhengcaioaContext context, IMapper mapper, WebCrawlerContext webcontext)
         {
             _context = context;
             _mapper = mapper;
+            _webcontext = webcontext;
         }
 
         public ResultEntity saveLiaotian(ProjectDTO projectDTO)
@@ -651,8 +654,7 @@
 
 
                 var query = _context.Projects
-           .FromSqlRaw(sql.ToString()).OrderByDescending(x=>x.StartTime)
-           .ToList();
+           .FromSqlRaw(sql.ToString());
 
 
 
@@ -662,7 +664,7 @@
 
             //if (searchEntity.totalrows == 0)
             searchEntity.totalrows = query.Count();
-            var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+            var lianlist = query.OrderByDescending(x => x.StartTime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
             list = _mapper.Map<List<ProjectDTO>>(lianlist);
 
             var cgfs = GetCgfs();
@@ -882,6 +884,17 @@
             return list;
         }
 
+        public List<ZhengfuProjectDTO> GetcaigougonggaoListsalary(string userid, DateTime datemin, DateTime datemax)
+        {
+
+
+            var listPosition = _webcontext.ZhengfuProjects.Where(r => r.RecStatus == "A" && r.Creater == userid && r.Createtime >= datemin && r.Createtime < datemax).ToList();
+
+            var list = _mapper.Map<List<ZhengfuProjectDTO>>(listPosition);
+            return list;
+        }
+
+
 
 
 
@@ -1058,5 +1071,334 @@
             return resultEntity;
         }
 
+
+
+        public ResultDataEntity<ZhengfuProjectDTO> SearchByPagingCaigougonggao(ZhengfuProjectDTOSearch searchEntity)
+        {
+            ResultDataEntity<ZhengfuProjectDTO> data = new ResultDataEntity<ZhengfuProjectDTO>();
+            List<ZhengfuProjectDTO> list = new List<ZhengfuProjectDTO>();
+
+
+
+
+            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
+                            }
+                      );
+
+
+            DateTime Createtimestart = DateTime.Now;
+            DateTime Createtimeend = DateTime.Now;
+            if (!string.IsNullOrWhiteSpace(searchEntity.Createtime))
+            {
+                string[] Createtimes = searchEntity.Createtime.Split("|");
+                DateTime.TryParse(Createtimes[0], out Createtimestart);
+                DateTime.TryParse(Createtimes[1], out Createtimeend);
+                Createtimeend = Createtimeend.AddDays(1);
+            }
+
+            DateTime StartTimestart = DateTime.Now;
+            DateTime StartTimeeend = DateTime.Now;
+            if (!string.IsNullOrWhiteSpace(searchEntity.StartTime))
+            {
+                string[] StartTimes = searchEntity.StartTime.Split("|");
+                DateTime.TryParse(StartTimes[0], out StartTimestart);
+                DateTime.TryParse(StartTimes[1], out StartTimeeend);
+                StartTimeeend = StartTimeeend.AddDays(1);
+            }
+
+
+
+            var query = (from a in _webcontext.ZhengfuProjects
+
+
+                         where a.RecStatus == "A"
+                          && (string.IsNullOrWhiteSpace(searchEntity.Createtime) || (a.Createtime >= Createtimestart && a.Createtime <= Createtimeend))
+                            && (string.IsNullOrWhiteSpace(searchEntity.StartTime) || (a.NoticeTime >= StartTimestart && a.NoticeTime <= StartTimeeend))
+                         && (string.IsNullOrWhiteSpace(searchEntity.Name) || a.Title.Contains(searchEntity.Name.Trim()))
+                           && (string.IsNullOrWhiteSpace(searchEntity.Number) || a.OpenTenderCode.Contains(searchEntity.Number.Trim()))
+                          && (string.IsNullOrWhiteSpace(searchEntity.Sheng) || a.Sheng == searchEntity.Sheng.Trim())
+                           && (string.IsNullOrWhiteSpace(searchEntity.City) || a.City == searchEntity.City.Trim())
+                            && (string.IsNullOrWhiteSpace(searchEntity.AreaId) || a.RegionCode == searchEntity.AreaId.Trim())
+                             && (string.IsNullOrWhiteSpace(searchEntity.Cgfs) || a.Cgfs == searchEntity.Cgfs.Trim())
+
+                                 && (string.IsNullOrWhiteSpace(searchEntity.Gglx) || a.Gglx == searchEntity.Gglx.Trim())
+                                   && (string.IsNullOrWhiteSpace(searchEntity.Creater) || a.Creater == searchEntity.Creater.Trim())
+
+                         select a
+
+                        );
+
+
+
+            //if (searchEntity.totalrows == 0)
+            searchEntity.totalrows = query.Count();
+           
+            var lianlist = query.OrderByDescending(x => x.NoticeTime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+            var querytrsult = _mapper.Map<List<ZhengfuProjectDTO>>(lianlist);
+            //var querytrsult = (  from a in lianlist
+
+            //               //      join f in _context.Areas on a.Sheng equals f.CodeId
+            //               //into fsss
+            //               //      from fff in fsss.DefaultIfEmpty()
+
+
+            //                     //join g in _context.Areas on a.City equals g.CodeId
+            //                     //   into gsss
+            //                     //from ggg in gsss.DefaultIfEmpty()
+
+
+            //                     //join h in _context.Areas on a.RegionCode equals h.CodeId
+            //                     //   into hsss
+            //                     //from hhh in hsss.DefaultIfEmpty()
+
+            //            //         join b in listCode.Where(x => x.CodeTable == "zhengfu_Project" && x.CodeField == "cgfs")
+            //            //on a.Cgfs equals b.CodeSn
+            //            //into bsss
+            //            //         from bbb in bsss.DefaultIfEmpty()
+
+            //                     //join c in listCode.Where(x => x.CodeTable == "zhengfu_Project" && x.CodeField == "gglx")
+            //                     //on a.Gglx equals c.CodeSn
+            //                     // into csss
+            //                     //from ccc in csss.DefaultIfEmpty()
+
+            //             //        join e in _context.PltUsers
+            //             //on a.Creater equals e.Id
+            //             //into esss
+            //             //        from abi in esss.DefaultIfEmpty()
+
+            //                     select new ZhengfuProjectDTO
+            //                     {
+            //                         Id = a.Id,
+            //                         NoticeTime = a.NoticeTime,
+            //                         NoticeTimeName = a.NoticeTime.ToString("yyyy-MM-dd"),
+            //                         Sheng = a.Sheng,
+            //                         City = a.City,
+            //                         RegionCode = a.RegionCode,
+            //                         /*ShengName = fff.Name + "-" + ggg.Name + "-" + hhh.Name,*/
+            //                         Cgfs = a.Cgfs,
+            //                         //CgfsName = bbb.Comments,
+            //                         Gglx = a.Gglx,
+            //                         //GglxName = ccc.Comments,
+
+            //                         OpenTenderCode = a.OpenTenderCode,
+            //                         Title = a.Title,
+
+            //                         Shorttitle = a.Shorttitle,
+            //                         Pageurl = a.Pageurl,
+            //                         Remark = a.Remark,
+            //                         RecStatus = a.RecStatus,
+            //                         Creater = a.Creater,
+            //                         //CreaterName = abi.UserName,
+            //                         Createtime = a.Createtime,
+            //                         Modifier = a.Modifier,
+
+            //                         Modifytime = a.Modifytime,
+            //                         Content = a.Content,
+            //                         Pingmu = a.Pingmu,
+            //                         Purchaser = a.Purchaser,
+            //                         Budget = a.Budget,
+
+            //                         Agency = a.Agency,
+            //                         AgencyCode = a.AgencyCode,
+
+            //                     }
+            //     ).OrderByDescending(x => x.NoticeTime).ToList();
+
+
+            foreach ( var zhengfuProjectDTO   in querytrsult)
+            {
+                if (zhengfuProjectDTO.Creater != "1")
+                {
+                 var pltUser   =   _context.PltUsers.Where(x=>x.Id == zhengfuProjectDTO.Creater).FirstOrDefault();
+                    if (pltUser != null)
+                    {
+                        zhengfuProjectDTO.CreaterName = pltUser.UserName;
+                    }
+                   
+                }
+                if (!string.IsNullOrWhiteSpace(zhengfuProjectDTO.Cgfs))
+                {
+                    var codeDataEntity = listCode.Where(x => x.CodeTable == "zhengfu_Project" && x.CodeField == "cgfs").Where(x => x.CodeSn == zhengfuProjectDTO.Cgfs).FirstOrDefault();
+                    if (codeDataEntity != null)
+                    {
+                        zhengfuProjectDTO.CgfsName = codeDataEntity.Comments;
+                    }
+
+                }
+                if (!string.IsNullOrWhiteSpace(zhengfuProjectDTO.Gglx))
+                {
+                    var codeDataEntity = listCode.Where(x => x.CodeTable == "zhengfu_Project" && x.CodeField == "gglx").Where(x => x.CodeSn == zhengfuProjectDTO.Gglx).FirstOrDefault();
+                    if (codeDataEntity != null)
+                    {
+                        zhengfuProjectDTO.GglxName = codeDataEntity.Comments;
+                    }
+
+                }
+                if (!string.IsNullOrWhiteSpace(zhengfuProjectDTO.Sheng))
+                {
+                    var area1 = _context.Areas.Where(x => x.CodeId == zhengfuProjectDTO.Sheng).FirstOrDefault();
+                    if (area1 != null)
+                    {
+                        zhengfuProjectDTO.ShengName  =   area1.Name;
+                    }
+
+                }
+
+                if (!string.IsNullOrWhiteSpace(zhengfuProjectDTO.City))
+                {
+                    var area = _context.Areas.Where(x => x.CodeId == zhengfuProjectDTO.City).FirstOrDefault();
+                    if (area != null)
+                    {
+                        zhengfuProjectDTO.ShengName += "-" + area.Name;
+                    }
+
+                    if (!string.IsNullOrWhiteSpace(zhengfuProjectDTO.RegionCode))
+                    {
+                        var area1 = _context.Areas.Where(x => x.CodeId == zhengfuProjectDTO.RegionCode).FirstOrDefault();
+                        if (area1 != null)
+                        {
+                            zhengfuProjectDTO.ShengName += "-" + area1.Name;
+                        }
+
+                    }
+                }
+
+            }
+
+            data.LoadData(searchEntity, querytrsult);
+            return data;
+        }
+
+
+
+        public ZhengfuProjectDTO GetZhengfuProjectDTO(string id)
+        {
+
+            var entity = _webcontext.ZhengfuProjects.Find(id);
+            if (entity.RecStatus != "A")
+            {
+                entity = new ZhengfuProject();
+            }
+
+
+            var zhengfuProjectDTO = _mapper.Map<ZhengfuProjectDTO>(entity);
+
+
+            return zhengfuProjectDTO;
+        }
+
+
+        public ResultEntity saveZhengfuProjectDTO(ZhengfuProjectDTO dTO)
+        {
+            ResultEntity resultEntity = new ResultEntity();
+            try
+            {
+                var checkUserSn = _webcontext.ZhengfuProjects.Where(x => x.Pageurl == dTO.Pageurl && x.RecStatus == "A" && x.Id != dTO.Id).FirstOrDefault();
+                if (checkUserSn != null && (string.IsNullOrWhiteSpace(dTO.Id) || (!string.IsNullOrWhiteSpace(dTO.Id) && checkUserSn.Id != dTO.Id)))
+                {
+                    resultEntity.Result = false;
+                    resultEntity.Message = "璇ラ〉闈㈠凡缁忎繚瀛�";
+                    return resultEntity;
+                }
+
+
+                var checkUserSnss = _webcontext.ZhengfuProjects.Where(x => x.Title == dTO.Title && x.RecStatus == "A" && x.Id != dTO.Id && x.NoticeTime > dTO.NoticeTime.AddDays(-1) && x.NoticeTime < dTO.NoticeTime.AddDays(1)).FirstOrDefault();
+                if (checkUserSnss != null && (string.IsNullOrWhiteSpace(dTO.Id) || (!string.IsNullOrWhiteSpace(dTO.Id) && checkUserSnss.Id != dTO.Id)))
+                {
+                    resultEntity.Result = false;
+                    resultEntity.Message = "璇ラ〉闈㈠凡缁忎繚瀛�";
+                    return resultEntity;
+                }
+
+
+
+
+                var zhengfuProject = _mapper.Map<ZhengfuProject>(dTO);
+
+
+                if (String.IsNullOrEmpty(zhengfuProject.Id))
+                {
+                    zhengfuProject.Id = Guid.NewGuid().ToString();
+                    dTO.Id = zhengfuProject.Id;
+                    _webcontext.ZhengfuProjects.Add(zhengfuProject);
+                }
+                else
+                {
+                    var updateproject = _webcontext.ZhengfuProjects.Find(dTO.Id);
+
+                    updateproject.NoticeTime = dTO.NoticeTime;
+                    updateproject.Sheng = dTO.Sheng;
+                    updateproject.City = dTO.City;
+                    updateproject.RegionCode = dTO.RegionCode;
+                    updateproject.Cgfs = dTO.Cgfs;
+                    updateproject.Gglx = dTO.Gglx;
+                    updateproject.OpenTenderCode = dTO.OpenTenderCode;
+                    updateproject.Title = dTO.Title;
+                    updateproject.Shorttitle = dTO.Shorttitle;
+                    updateproject.Pageurl = dTO.Pageurl;
+                    updateproject.Remark = dTO.Remark;
+ 
+
+
+                    updateproject.Content = dTO.Content;
+                    updateproject.Pingmu = dTO.Pingmu;
+                    updateproject.Purchaser = dTO.Purchaser;
+
+                    updateproject.Budget = dTO.Budget;
+                    updateproject.Agency = dTO.Agency;
+                    updateproject.AgencyCode = dTO.AgencyCode;
+                    updateproject.OpenTenderTime = dTO.OpenTenderTime;
+                    
+ 
+                    updateproject.RecStatus = dTO.RecStatus;
+                    updateproject.Modifier = dTO.Modifier;
+                    updateproject.Modifytime = dTO.Modifytime;
+                }
+
+                _webcontext.SaveChanges();
+ 
+
+                resultEntity.ReturnID = dTO.Id;
+                resultEntity.Result = true;
+            }
+            catch (Exception ex)
+            {
+                resultEntity.Result = false;
+                resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�";
+
+            }
+            return resultEntity;
+        }
+
+
+        public ResultEntity GetZhengfuProjectDTOByPageurl(string Pageurl, string Id)
+        {
+            ResultEntity resultEntity = new ResultEntity();
+            resultEntity.Result = true;
+            var checkUserSn = _webcontext.ZhengfuProjects.Where(x => x.Pageurl == Pageurl && x.RecStatus == "A" && x.Id != Id).FirstOrDefault();
+            if (checkUserSn != null && (string.IsNullOrWhiteSpace(Id) || (!string.IsNullOrWhiteSpace(Id) && checkUserSn.Id != Id)))
+            {
+                resultEntity.Result = false;
+                resultEntity.Message = "璇ラ〉闈㈠凡缁忓瓨鍦�";
+                 
+            }
+
+
+            return resultEntity;
+        }
     }
 }
diff --git a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
index 61c2aed..75dc652 100644
--- a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
@@ -400,21 +400,21 @@
             if(admAsk.Step == "鎻愪氦")
             {
                 //璇峰亣鏃堕棿涓嶈兘閲嶅彔
-              var qingjia  =   _signinService.GetAskLeaveChongdie(curentuser.Id, admAsk.StratTime.Value, admAsk.EndTime.Value);
-                if (qingjia.Count > 0)
-                {
-                    resultEntity.Result = false;
-                    resultEntity.Message = "璇ユ椂闂存宸茬粡鏈夎鍋囷紒";
-                    return JsonConvert.SerializeObject(resultEntity);
-                }
+              //var qingjia  =   _signinService.GetAskLeaveChongdie(curentuser.Id, admAsk.StratTime.Value, admAsk.EndTime.Value);
+              //  if (qingjia.Count > 0)
+              //  {
+              //      resultEntity.Result = false;
+              //      resultEntity.Message = "璇ユ椂闂存宸茬粡鏈夎鍋囷紒";
+              //      return JsonConvert.SerializeObject(resultEntity);
+              //  }
 
-            //璇峰亣瓒呰繃涓夊ぉ锛屽繀椤绘彁鍓嶄笁澶╀互涓婅鍋囷紒
-                if (admAsk.LaveDay.Value >= 3 && admAsk.StratTime.Value.Date < DateTime.Now.Date.AddDays(3))
-                {
-                    resultEntity.Result = false;
-                    resultEntity.Message = "璇峰亣瓒呰繃涓夊ぉ锛屽繀椤绘彁鍓嶄笁澶╀互涓婅鍋囷紒";
-                    return JsonConvert.SerializeObject(resultEntity);
-                }
+            ////璇峰亣瓒呰繃涓夊ぉ锛屽繀椤绘彁鍓嶄笁澶╀互涓婅鍋囷紒
+            //    if (admAsk.LaveDay.Value >= 3 && admAsk.StratTime.Value.Date < DateTime.Now.Date.AddDays(3))
+            //    {
+            //        resultEntity.Result = false;
+            //        resultEntity.Message = "璇峰亣瓒呰繃涓夊ぉ锛屽繀椤绘彁鍓嶄笁澶╀互涓婅鍋囷紒";
+            //        return JsonConvert.SerializeObject(resultEntity);
+            //    }
 
                 //璇峰亣瓒呰繃涓冨ぉ锛屽繀椤绘彁鍓嶄竷澶╀互涓婅鍋囷紒
                 if (admAsk.LaveDay.Value >= 7 && admAsk.StratTime.Value.Date < DateTime.Now.Date.AddDays(7))
diff --git a/zhengcaioa/zhengcaioa/Controllers/ProjectController.cs b/zhengcaioa/zhengcaioa/Controllers/ProjectController.cs
index eb6f92f..84e56b2 100644
--- a/zhengcaioa/zhengcaioa/Controllers/ProjectController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/ProjectController.cs
@@ -17,6 +17,9 @@
 using System.IdentityModel.Tokens.Jwt;
 using CommonToolsCore;
 using System.Transactions;
+using DTO.WebCrawler;
+using System.Net.Http.Headers;
+using Microsoft.Extensions.Configuration;
 
 namespace zhengcaioa.Controllers
 {
@@ -32,13 +35,14 @@
         private readonly IFiOrderrecievemoneyService _fiOrderrecievemoneyService;
         private readonly IAreaService _areaService;
         private readonly IPltPageService _pltPageService;
-
+        private readonly IConfiguration _configuration;
         public ProjectController(ILogger<ProjectController> logger, IProjectService projectService, ILiaotianService liaotianService,IIntentionCustomerService intentionCustomerService, IUserService userService
             , ICooperatecustomCustomerService cooperatecustomCustomerService
             , ISysBaimingdanService sysBaimingdanService
             , IFiOrderrecievemoneyService fiOrderrecievemoneyService
             , IAreaService areaService
-              , IPltPageService pltPageService)
+              , IPltPageService pltPageService
+              , IConfiguration configuration)
         {
             _logger = logger;
             _projectService = projectService;
@@ -50,6 +54,7 @@
             _fiOrderrecievemoneyService = fiOrderrecievemoneyService;
             _areaService = areaService;
             _pltPageService = pltPageService;
+            _configuration = configuration;
         }
         [CheckLogin]
         public IActionResult Index()
@@ -1369,5 +1374,311 @@
 
             return new JsonResult(resultEntity);
         }
+
+
+
+
+        [CheckLogin]
+        public IActionResult indexZhengfuProject()
+        {
+            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);
+            var pageEntities = _pltPageService.GetUserPage(curentuser.Id, "/Project/indexZhengfuProject");
+            var pageEntities1 = pageEntities.Where(x => x.PageMethod == "01").ToList();
+            if (pageEntities1.Count(x => x.PageShortcut == "Search") <= 0)
+            {
+                ActionEntity actionEntity = new ActionEntity();
+                actionEntity.OpenType = 0;
+                actionEntity.ActionUrl = "";
+                actionEntity.ActionFun = "Search";
+                actionEntity.PageIco = "fa fa-search";
+                actionEntity.ActionName = "鏌ヨ";
+                actionlist.Add(actionEntity);
+
+                ViewData["Creater11"] = curentuser.Id;
+            }
+            foreach (var pageEntity in pageEntities1)
+            {
+                ActionEntity actionEntity1 = new ActionEntity();
+                actionEntity1.OpenType = pageEntity.OpenType;
+                actionEntity1.ActionUrl = "";
+                actionEntity1.ActionFun = pageEntity.PageShortcut;
+                actionEntity1.PageIco = pageEntity.PageIco;
+                actionEntity1.ActionName = pageEntity.PageName;
+                actionlist.Add(actionEntity1);
+            }
+
+            ViewData["ActionInfo"] = actionlist;
+            ViewBag.ProjectDropDown = _projectService.AllcgfsDropDown().Select(x => new { code = x.Value, label = x.Text }).ToList();
+            //ViewBag.flbx = _liaotianService.GetSYScode("Project", "flbx").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
+            var areaDTOs = _projectService.Getsheng().ToList();
+            foreach (var areaDTO in areaDTOs)
+            {
+                if (areaDTO.CodeId == "510000")
+                {
+                    areaDTOs.Remove(areaDTO);
+                    break;
+                }
+            }
+            var areaDTOsic = new Area();
+            areaDTOsic.CodeId = "510000";
+            areaDTOsic.Name = "鍥涘窛鐪�";
+            areaDTOsic.ParentId = "0     ";
+            areaDTOs.Insert(1, areaDTOsic);
+            ViewBag.ShengDropDown = areaDTOs.Select(x => new { code = x.CodeId, label = x.Name }).ToList();
+
+            ViewBag.Creater = _userService.GetList().Select(x => new { code = x.Id, label = x.UserName }).ToList();
+
+
+
+            ViewBag.gglx = _liaotianService.GetSYScode("zhengfu_Project", "gglx").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
+            ViewBag.cgfs = _liaotianService.GetSYScode("zhengfu_Project", "cgfs").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
+
+
+            ViewBag.Baomingtimebegin = DateTime.Now.AddMonths(-6).ToString("yyyy-MM-dd");
+            ViewBag.Baomingtimeend = DateTime.Now.ToString("yyyy-MM-dd");
+
+
+          
+
+            return View();
+        }
+
+        [CheckLogin]
+        public string GetZhengfuProjectList(ZhengfuProjectDTOSearch search)
+        {
+            //JsonResult jsonResult =   new JsonResult(_liaotianService.SearchByPaging(search), new Newtonsoft.Json.Serialization.DefaultContractResolver());
+            return JsonConvert.SerializeObject(_projectService.SearchByPagingCaigougonggao(search));
+        }
+
+
+
+        public IActionResult ADDZhengfuProject(string id = null)
+        {
+            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+            ViewData["curentuser"] = curentuser;
+            var pageEntities = _pltPageService.GetUserPage(curentuser.Id, "/Project/indexZhengfuProject");
+            var pageEntities2 = pageEntities.Where(x => x.PageMethod == "02").ToList();
+            ViewData["ActionInfo2"] = pageEntities2;
+            ZhengfuProjectDTO zhengfuProjectDTO = new ZhengfuProjectDTO();
+            if (!String.IsNullOrEmpty(id))
+            {
+                zhengfuProjectDTO = _projectService.GetZhengfuProjectDTO(id);
+ 
+ 
+
+                
+
+            }
+            else
+            {
+                zhengfuProjectDTO.Sheng = "510000";
+                zhengfuProjectDTO.City = "510100";
+                zhengfuProjectDTO.RegionCode = "510107";
+                zhengfuProjectDTO.NoticeTime = DateTime.Now;
+                zhengfuProjectDTO.Gglx = "02";
+                //zhengfuProjectDTO.NoticeTime = DateTime.Now;
+                //zhengfuProjectDTO.NoticeTime = DateTime.Now;
+            }
+           
+             
+            var areaDTOs = _projectService.Getsheng().ToList();
+            foreach (var areaDTO in areaDTOs)
+            {
+                if (areaDTO.CodeId == "510000")
+                {
+                    areaDTOs.Remove(areaDTO);
+                    break;
+                }
+            }
+            var areaDTOsic = new Area();
+            areaDTOsic.CodeId = "510000";
+            areaDTOsic.Name = "鍥涘窛鐪�";
+            areaDTOsic.ParentId = "0     ";
+            areaDTOs.Insert(1, areaDTOsic);
+            var sheng = areaDTOs;
+            var shi = _projectService.Getshi(zhengfuProjectDTO.Sheng);
+            var quxian = _projectService.Getquxian(zhengfuProjectDTO.City);
+
+            ViewBag.gglx = _liaotianService.GetSYScode("zhengfu_Project", "gglx");
+            ViewBag.cgfs = _liaotianService.GetSYScode("zhengfu_Project", "cgfs");
+            ViewBag.hyfl = _liaotianService.GetSYScode("CooperatecustomCustomer", "hyfl");
+
+            ViewBag.sheng = sheng;
+            ViewBag.shi = shi;
+            ViewBag.quxian = quxian;
+            ViewData.Model = zhengfuProjectDTO;
+            return View();
+        }
+
+
+
+        /// <summary>
+        /// 淇濆瓨
+        /// </summary>
+        /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param>
+        /// <returns></returns>
+        /// 
+        [CheckLogin]
+        [HttpPost]
+        public string SaveZhengfuProject(ZhengfuProjectDTO 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;
+            }
+            if (string.IsNullOrWhiteSpace(data.Content))
+            {
+                data.Content = data.Content1;
+            }
+            data.Shorttitle = data.Title;
+            data.Modifier = curentuser.Id;
+            data.Modifytime = DateTime.Now;
+            ResultEntity resultEntity = new ResultEntity();
+            resultEntity.Result = false;
+            
+                resultEntity = _projectService.saveZhengfuProjectDTO(data);
+            if (resultEntity.Result)
+            {
+                var areaDTOs = _areaService.GetList();
+
+                string api_domain = _configuration.GetSection("Elasticsearchurl").Value;
+                string url = $"{api_domain}/webcrawler/_doc/" + data.Id;
+                string result = string.Empty;
+                Uri postUrl = new Uri(url);
+                eswebcrawler eswebcrawler1 = new eswebcrawler();
+                eswebcrawler1.Id = data.Id;
+                eswebcrawler1.noticeTime = data.NoticeTime.ToString("yyyy-MM-dd HH:mm:ss");
+                eswebcrawler1.openTenderTime = data.OpenTenderTime.HasValue ? data.OpenTenderTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : null;
+                eswebcrawler1.sheng = data.Sheng;
+                if (!string.IsNullOrWhiteSpace(data.Sheng))
+                {
+                    var areaDTO = areaDTOs.Where(x => x.CodeId == data.Sheng).FirstOrDefault();
+                    if (areaDTO != null)
+                    {
+                        eswebcrawler1.shengName = areaDTO.Name;
+                    }
+                }
+
+                eswebcrawler1.city = data.City;
+                if (!string.IsNullOrWhiteSpace(data.City))
+                {
+                    var areaDTO = areaDTOs.Where(x => x.CodeId == data.City).FirstOrDefault();
+                    if (areaDTO != null)
+                    {
+                        eswebcrawler1.cityName = areaDTO.Name;
+                    }
+                }
+                eswebcrawler1.regionCode = data.RegionCode;
+                if (!string.IsNullOrWhiteSpace(data.RegionCode))
+                {
+                    var areaDTO = areaDTOs.Where(x => x.CodeId == data.RegionCode).FirstOrDefault();
+                    if (areaDTO != null)
+                    {
+                        eswebcrawler1.regionName = areaDTO.Name;
+                    }
+                }
+
+                eswebcrawler1.cgfs = data.Cgfs;
+                if (!string.IsNullOrWhiteSpace(data.Cgfs))
+                {
+                    var sysCodeDtl = _liaotianService.GetSYScode("zhengfu_Project", "cgfs").Where(x => x.CodeSn == data.Cgfs).FirstOrDefault();
+                    if (sysCodeDtl != null)
+                    {
+                        eswebcrawler1.cgfsName = sysCodeDtl.Comments;
+                    }
+                }
+
+
+                eswebcrawler1.gglx = data.Gglx;
+                if (!string.IsNullOrWhiteSpace(data.Gglx))
+                {
+                    var sysCodeDtl = _liaotianService.GetSYScode("zhengfu_Project", "gglx").Where(x => x.CodeSn == data.Gglx).FirstOrDefault();
+                    if (sysCodeDtl != null)
+                    {
+                        eswebcrawler1.gglxName = sysCodeDtl.Comments;
+                    }
+                }
+                eswebcrawler1.openTenderCode = data.OpenTenderCode;
+                eswebcrawler1.title = data.Title;
+                eswebcrawler1.shorttitle = data.Shorttitle;
+                eswebcrawler1.pageurl = data.Pageurl;
+                eswebcrawler1.pingmu = data.Pingmu;
+                eswebcrawler1.pingmuName = "";
+                eswebcrawler1.purchaser = data.Purchaser;
+                eswebcrawler1.budget = data.Budget.HasValue ? data.Budget.Value.ToString() : "";
+                eswebcrawler1.agency = data.Agency;
+                eswebcrawler1.agencyCode = data.AgencyCode;
+                eswebcrawler1.modifyTime = data.Modifytime.ToString("yyyy-MM-dd HH:mm:ss");
+
+                string requestJson = JsonConvert.SerializeObject(eswebcrawler1);
+
+                using (HttpContent httpContent = new StringContent(requestJson))
+                {
+                    httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
+                    using (HttpClient httpClient = new HttpClient())
+                    {
+                        httpClient.Timeout = TimeSpan.FromSeconds(60);
+                        HttpResponseMessage responseMessage = httpClient.PutAsync(postUrl, httpContent).Result;
+                        result = responseMessage.Content.ReadAsStringAsync().Result;
+                    }
+
+                }
+
+                Newtonsoft.Json.Linq.JObject jobject = (Newtonsoft.Json.Linq.JObject)JsonConvert.DeserializeObject(result);
+
+                if (jobject["error"] == null && jobject["_shards"]["successful"].ToString() == "1")
+                {
+
+                }
+                else
+                {
+                    resultEntity.Result = false;
+                    resultEntity.Message = "淇濆瓨鏁版嵁搴撳嚭閿欙紒";
+                    
+                }
+            }
+             
+
+             
+
+
+
+            return JsonConvert.SerializeObject(resultEntity);
+        }
+
+
+        /// <summary>
+        /// 鑾峰彇椤圭洰鏄惁宸茬粡褰曞叆
+        /// </summary>
+        /// <param name="shengid">甯俰d</param>
+        /// <returns></returns>
+        [CheckLogin]
+        public string getPageurl(string Pageurl, string Id)
+        {
+            var quxian = _projectService.GetZhengfuProjectDTOByPageurl(Pageurl, Id);
+
+            return JsonConvert.SerializeObject(quxian);
+
+        }
     }
 }
diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
index 61b5848..31d2961 100644
--- a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
@@ -249,6 +249,59 @@
             #endregion
 
 
+
+            #region 閲囪喘鍏憡褰曞叆 
+            TongjiBaoBiaoDTO caigougonggaoDTO = new TongjiBaoBiaoDTO();
+            caigougonggaoDTO.gongzuo = "閲囪喘鍏憡褰曞叆";
+            //鏈湀鏁伴噺
+            var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin);
+            caigougonggaoDTO.benyueshuliang = caigougonggaoDTOsyue.Count.ToString();
+            //鏈棩鏁伴噺
+            var caigougonggaoDTOsri = caigougonggaoDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+            caigougonggaoDTO.benrishuliang = caigougonggaoDTOsri.Count.ToString();
+
+            var jijianicaigougonggao = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault();
+
+            if (jijianicaigougonggao != null)
+            {
+                var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianicaigougonggao.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+                if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+                {
+                    if (jixiaotichengfangan.Renwustandard == "01")
+                    {
+                        //鏈湀瑙勫畾
+                        caigougonggaoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##");
+                        //鏈棩瑙勫畾
+                        caigougonggaoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##");
+                        if (jixiaotichengfangan.Tichengstandard == "01")
+                        {
+                            decimal youxiaojijian = caigougonggaoDTOsri.Count - jixiaotichengfangan.Renwu.Value;
+                            if (youxiaojijian > 0)
+                            {
+                                caigougonggaoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##");
+                            }
+                        }
+                    }
+                    else if (jixiaotichengfangan.Renwustandard == "02")
+                    {
+                        //鏈湀瑙勫畾
+                        caigougonggaoDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ;
+                        //if (jixiaotichengfangan.Tichengstandard == "01")
+                        //{
+                        //    decimal youxiaojijian = _intentionCustomerDTOs.Count + cooperatecustomCustomerDTOs.Count - renwujishu;
+                        //    if (youxiaojijian > 0)
+                        //    {
+                        //        hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                        //    }
+
+                        //}
+                    }
+                }
+            }
+            if (caigougonggaoDTOsyue.Count > 0 || caigougonggaoDTOsri.Count > 0)
+                tuiguangDTOs.Add(caigougonggaoDTO);
+            #endregion
+
             #region 瀹㈡埛璧勬枡褰曞叆
             TongjiBaoBiaoDTO kehuluruDTO = new TongjiBaoBiaoDTO();
             kehuluruDTO.gongzuo = "瀹㈡埛璧勬枡褰曞叆";
@@ -2010,6 +2063,58 @@
                     #endregion
 
 
+                    #region 閲囪喘鍏憡褰曞叆 
+                    TongjiBaoBiaoDTO caigougonggaoDTO = new TongjiBaoBiaoDTO();
+                    caigougonggaoDTO.gongzuo = "閲囪喘鍏憡褰曞叆";
+                    //鏈湀鏁伴噺
+                    var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(Userid, dateminkaoqin, datemaxkaoqin);
+                    caigougonggaoDTO.benyueshuliang = caigougonggaoDTOsyue.Count.ToString();
+                    //鏈棩鏁伴噺
+                    var caigougonggaoDTOsri = caigougonggaoDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+                    caigougonggaoDTO.benrishuliang = caigougonggaoDTOsri.Count.ToString();
+
+                    var jijianicaigougonggao = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault();
+
+                    if (jijianicaigougonggao != null)
+                    {
+                        var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianicaigougonggao.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+                        if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+                        {
+                            if (jixiaotichengfangan.Renwustandard == "01")
+                            {
+                                //鏈湀瑙勫畾
+                                caigougonggaoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##");
+                                //鏈棩瑙勫畾
+                                caigougonggaoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##");
+                                if (jixiaotichengfangan.Tichengstandard == "01")
+                                {
+                                    decimal youxiaojijian = caigougonggaoDTOsri.Count - jixiaotichengfangan.Renwu.Value;
+                                    if (youxiaojijian > 0)
+                                    {
+                                        caigougonggaoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##");
+                                    }
+                                }
+                            }
+                            else if (jixiaotichengfangan.Renwustandard == "02")
+                            {
+                                //鏈湀瑙勫畾
+                                caigougonggaoDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ;
+                                //if (jixiaotichengfangan.Tichengstandard == "01")
+                                //{
+                                //    decimal youxiaojijian = _intentionCustomerDTOs.Count + cooperatecustomCustomerDTOs.Count - renwujishu;
+                                //    if (youxiaojijian > 0)
+                                //    {
+                                //        hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                                //    }
+
+                                //}
+                            }
+                        }
+                    }
+                    if (caigougonggaoDTOsyue.Count > 0 || caigougonggaoDTOsri.Count > 0)
+                        tuiguangDTOs.Add(caigougonggaoDTO);
+                    #endregion
+
                     #region 瀹㈡埛璧勬枡褰曞叆
                     TongjiBaoBiaoDTO kehuluruDTO = new TongjiBaoBiaoDTO();
                     kehuluruDTO.gongzuo = "瀹㈡埛璧勬枡褰曞叆";
diff --git a/zhengcaioa/zhengcaioa/Startup.cs b/zhengcaioa/zhengcaioa/Startup.cs
index 72ce521..a8daa76 100644
--- a/zhengcaioa/zhengcaioa/Startup.cs
+++ b/zhengcaioa/zhengcaioa/Startup.cs
@@ -78,6 +78,10 @@
             services.AddDbContext<zcUserInfoN_dbContext>(options =>
             options.UseSqlServer(connectionString2));
 
+            var connectionString3 = Configuration.GetConnectionString("WebCrawlerConnection");
+            services.AddDbContext<WebCrawlerContext>(options =>
+            options.UseSqlServer(connectionString3));
+
             services.AddControllersWithViews();
 
             services.AddScoped(typeof(ISimService), typeof(SimService));
diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
index 738c838..0c1b434 100644
--- a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
+++ b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
@@ -1840,6 +1840,50 @@
                     //var feijijiandengji = fiPiecerateDTOs.Where(x => x.Standard == "A");
                     //var  jijiandengji =    fiPiecerateDTOs.Where(x => x.Standard == "A");
 
+                    #region 閲囪喘鍏憡褰曞叆
+
+                    var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
+                    if (caigougonggaoDTOsyue != null && caigougonggaoDTOsyue.Count > 0)
+                    {
+                        var jijianidddd = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault();
+                        if (jijianidddd != null)
+                        {
+                            var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianidddd.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+                            if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+                            {
+                                if (jixiaotichengfangan.Renwustandard == "01")
+                                {
+                                    decimal renwujishu = admAttendanceDTO.Yingchuqin * jixiaotichengfangan.Renwu.Value;
+                                    if (jixiaotichengfangan.Tichengstandard == "01")
+                                    {
+                                        decimal youxiaojijian = caigougonggaoDTOsyue.Count - renwujishu;
+                                        if (youxiaojijian > 0)
+                                        {
+                                            hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                                        }
+
+                                    }
+
+                                }
+                                else if (jixiaotichengfangan.Renwustandard == "02")
+                                {
+                                    decimal renwujishu = jixiaotichengfangan.Renwu.Value;
+                                    if (jixiaotichengfangan.Tichengstandard == "01")
+                                    {
+                                        decimal youxiaojijian = caigougonggaoDTOsyue.Count - renwujishu;
+                                        if (youxiaojijian > 0)
+                                        {
+                                            hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                                        }
+
+                                    }
+                                }
+                            }
+
+                        }
+                    }
+                    #endregion
+
                     #region 閲囪喘椤圭洰褰曞叆
 
                     var projectDTOsyue = _projectService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
@@ -1884,8 +1928,12 @@
                     }
                     #endregion
 
+
+
+                 
+
                     #region 瀹㈡埛璧勬枡褰曞叆
-                    
+
                     var _intentionCustomerDTOs = _intentionCustomerService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
                     if (_intentionCustomerDTOs!=null && _intentionCustomerDTOs.Count > 0)
                     {
diff --git a/zhengcaioa/zhengcaioa/Views/AdmBreakPrecedent/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/AdmBreakPrecedent/Edit.cshtml
index 64be367..d8f4bfa 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmBreakPrecedent/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmBreakPrecedent/Edit.cshtml
@@ -182,7 +182,7 @@
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">澶勭綒閲戦(鍏�)</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="璁′欢宸ヨ祫" name="Chufajine" id="Chufajine" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Chufajine" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="璁′欢宸ヨ祫" name="Chufajine" id="Chufajine" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Chufajine" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/AdmDocDoc/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/AdmDocDoc/Edit.cshtml
index c6bc53a..4a28412 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmDocDoc/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmDocDoc/Edit.cshtml
@@ -203,7 +203,7 @@
                                 <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-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="鍗板埛鏁伴噺" name="Printtimes" id="Printtimes" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Printtimes" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="鍗板埛鏁伴噺" name="Printtimes" id="Printtimes" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Printtimes" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </div>
                                     <label class="text-right col-sm-1 col-md-1 control-label">鎵撳嵃鐘舵�� </label>
diff --git a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Chuku.cshtml b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Chuku.cshtml
index c52535a..c66b0bf 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Chuku.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Chuku.cshtml
@@ -162,14 +162,14 @@
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍓╀綑鏁伴噺</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.GoodsLeft" readonly="">
+                                        <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.GoodsLeft" readonly="">
 
                                     </div>
 
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍑哄簱鏁伴噺</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="鍑哄簱鏁伴噺" name="GoodsCaozuo" id="GoodsCaozuo" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="鍑哄簱鏁伴噺" name="GoodsCaozuo" id="GoodsCaozuo" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Edit.cshtml
index 7a2e5da..3a06f63 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Edit.cshtml
@@ -142,81 +142,81 @@
 
             <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="GoodsPrice" id="GoodsPrice" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.GoodsPrice" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                <input class="form-control" label="鐗╁搧浠锋牸锛堝厓锛�" name="GoodsPrice" id="GoodsPrice" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.GoodsPrice" 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="GoodsNum" id="GoodsNum" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.GoodsNum" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                <input class="form-control" label="鐗╁搧鏁伴噺" name="GoodsNum" id="GoodsNum" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.GoodsNum" 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;">
-                                    @*@if (!string.IsNullOrWhiteSpace(Model.Id))
-            {
-                <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍓╀綑鏁伴噺</label>
-                <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                    <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.GoodsLeft" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                            <div class="clearfix layer-area" style="padding-bottom:15px;">
+                                @*@if (!string.IsNullOrWhiteSpace(Model.Id))
+        {
+            <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍓╀綑鏁伴噺</label>
+            <div class="col-sm-2 col-md-2" grouptype="Vdata">
+                <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.GoodsLeft" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
-                </div>
-            }*@
+            </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="GoodsStatus" class="form-control" name="GoodsStatus" data-placeholder="閫夋嫨 搴忓垪 ...">
-                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
-                                            @foreach (var item in GoodsStatus)
+                                <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="GoodsStatus" class="form-control" name="GoodsStatus" data-placeholder="閫夋嫨 搴忓垪 ...">
+                                        <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                        @foreach (var item in GoodsStatus)
+                                        {
+                                            @if (!item.CodeSn.Equals(Model.GoodsStatus))
                                             {
-                                                @if (!item.CodeSn.Equals(Model.GoodsStatus))
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true">
-                                                        @item.Comments
-                                                    </option>
-                                                }
-                                                else
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true" selected="selected">
-                                                        @item.Comments
-                                                    </option>
-                                                }
-
+                                                <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">
-                                        <select id="HaocaiStatus" class="form-control" name="HaocaiStatus" data-placeholder="閫夋嫨 搴忓垪 ...">
-                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
-                                            @foreach (var item in shifou)
-                                            {
-                                                @if (!item.CodeSn.Equals(Model.HaocaiStatus))
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true">
-                                                        @item.Comments
-                                                    </option>
-                                                }
-                                                else
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true" selected="selected">
-                                                        @item.Comments
-                                                    </option>
-                                                }
-
-                                            }
-
-                                        </select>
-                                    </div>
-
+                                    </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">
+                                    <select id="HaocaiStatus" class="form-control" name="HaocaiStatus" data-placeholder="閫夋嫨 搴忓垪 ...">
+                                        <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                        @foreach (var item in shifou)
+                                        {
+                                            @if (!item.CodeSn.Equals(Model.HaocaiStatus))
+                                            {
+                                                <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 class="text-right col-sm-1 col-md-1 control-label">ISBN</label>
diff --git a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Ruku.cshtml b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Ruku.cshtml
index af481f9..ceb97f5 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Ruku.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmGoodsManage/Ruku.cshtml
@@ -164,14 +164,14 @@
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍓╀綑鏁伴噺</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.GoodsLeft"  readonly="">
+                                        <input class="form-control" label="鍓╀綑鏁伴噺" name="GoodsLeft" id="GoodsLeft" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.GoodsLeft"  readonly="">
 
                                     </div>
 
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鍏ュ簱鏁伴噺</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="鍏ュ簱鏁伴噺" name="GoodsCaozuo" id="GoodsCaozuo" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="鍏ュ簱鏁伴噺" name="GoodsCaozuo" id="GoodsCaozuo" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Edit.cshtml
index 468c843..7567bd5 100644
--- a/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/AdmPieceCheck/Edit.cshtml
@@ -201,7 +201,7 @@
 
                                     <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="Gongzi" id="Gongzi" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Gongzi" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="缁╂晥鎻愭垚" name="Gongzi" id="Gongzi" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Gongzi" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
@@ -216,7 +216,7 @@
 
                                     <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="Shuliang" id="Shuliang" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Shuliang" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="缁╂晥鎻愭垚" name="Shuliang" id="Shuliang" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Shuliang" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/CooperOrder/Chedan.cshtml b/zhengcaioa/zhengcaioa/Views/CooperOrder/Chedan.cshtml
index e3c2e64..075baa1 100644
--- a/zhengcaioa/zhengcaioa/Views/CooperOrder/Chedan.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/CooperOrder/Chedan.cshtml
@@ -102,7 +102,7 @@
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     
                                     <div class="col-sm-12 col-md-12">
-                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Price" id="Price" labtype="txt" addvisible="true"   editvisible="true" reg="" ismust="true" type="number" value="@Money" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Price" id="Price" labtype="txt" addvisible="true"   editvisible="true" reg="" ismust="true" type="text" value="@Money" 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/CooperOrder/PrintZhiyihan.cshtml b/zhengcaioa/zhengcaioa/Views/CooperOrder/PrintZhiyihan.cshtml
index 7c00765..b43d225 100644
--- a/zhengcaioa/zhengcaioa/Views/CooperOrder/PrintZhiyihan.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/CooperOrder/PrintZhiyihan.cshtml
@@ -452,7 +452,7 @@
                 , content: '   <div class="clearfix layer-area" style="padding-bottom:15px;"> ' +
                     ' <label class="text-right col-sm-6 col-md-6 control-label">鍓湰鏁伴噺</label>' +
                     '   <div class="col-sm-6 col-md-6">' +
-                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="number" value="@(PrintNum)" oninput="if(value.length>2)value=value.slice(0,2)" >' +
+                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="text" value="@(PrintNum)" oninput="if(value.length>2)value=value.slice(0,2)" >' +
 
 
                     '</div>' +
@@ -528,7 +528,7 @@
                 , content: '   <div class="clearfix layer-area" style="padding-bottom:15px;"> ' +
                     ' <label class="text-right col-sm-6 col-md-6 control-label">鍓湰鏁伴噺</label>' +
                     '   <div class="col-sm-6 col-md-6">' +
-                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="number" value="0" oninput="if(value.length>2)value=value.slice(0,2)" >' +
+                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="text" value="0" oninput="if(value.length>2)value=value.slice(0,2)" >' +
 
 
                     '</div>' +
diff --git a/zhengcaioa/zhengcaioa/Views/CooperOrder/Printtousushu.cshtml b/zhengcaioa/zhengcaioa/Views/CooperOrder/Printtousushu.cshtml
index 4b41243..619bfcd 100644
--- a/zhengcaioa/zhengcaioa/Views/CooperOrder/Printtousushu.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/CooperOrder/Printtousushu.cshtml
@@ -551,7 +551,7 @@
                 , content: '   <div class="clearfix layer-area" style="padding-bottom:15px;"> ' +
                     ' <label class="text-right col-sm-6 col-md-6 control-label">鍓湰鏁伴噺</label>' +
                     '   <div class="col-sm-6 col-md-6">' +
-                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="number" value="@(PrintNum)" oninput="if(value.length>2)value=value.slice(0,2)" >' +
+                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="text" value="@(PrintNum)" oninput="if(value.length>2)value=value.slice(0,2)" >' +
 
 
                     '</div>' +
@@ -627,7 +627,7 @@
                 , content: '   <div class="clearfix layer-area" style="padding-bottom:15px;"> ' +
                     ' <label class="text-right col-sm-6 col-md-6 control-label">鍓湰鏁伴噺</label>' +
                     '   <div class="col-sm-6 col-md-6">' +
-                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="number" value="0" oninput="if(value.length>2)value=value.slice(0,2)" >' +
+                    ' <input class="form-control" label="鍓湰鏁伴噺" name="PrintNums" id="PrintNums" labtype="txt" addvisible="true"   type="text" value="0" oninput="if(value.length>2)value=value.slice(0,2)" >' +
 
 
                     '</div>' +
diff --git a/zhengcaioa/zhengcaioa/Views/CooperatecustomCustomer/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/CooperatecustomCustomer/Edit.cshtml
index 2c915c8..69b2c08 100644
--- a/zhengcaioa/zhengcaioa/Views/CooperatecustomCustomer/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/CooperatecustomCustomer/Edit.cshtml
@@ -376,13 +376,13 @@
 
                                     <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎺堜俊棰濆害</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Shouxinedu" id="Shouxinedu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@(Model.Shouxinedu.HasValue?Model.Shouxinedu.Value.ToString("f2"):"")" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Shouxinedu" id="Shouxinedu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@(Model.Shouxinedu.HasValue?Model.Shouxinedu.Value.ToString("f2"):"")" 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">鍓╀綑濂楅浠舵暟</label>
                                     <div class="col-sm-2 col-md-2" grouptype="Vdata">
-                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Taocanjianshu" id="Taocanjianshu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@(Model.Taocanjianshu.HasValue?Model.Taocanjianshu.Value.ToString():"")" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^[1-9]{1}[0-9]*$/)">
+                                        <input class="form-control" label="瀹㈡埛鍚嶇О" name="Taocanjianshu" id="Taocanjianshu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@(Model.Taocanjianshu.HasValue?Model.Taocanjianshu.Value.ToString():"")" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^[1-9]{1}[0-9]*$/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/Edit.cshtml
index 1e04847..4c2a8d5 100644
--- a/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/Edit.cshtml
@@ -117,7 +117,7 @@
                                 <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="Recievemoney" id="Recievemoney" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.WeishouMoney.ToString("F2")" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="鏀舵閲戦锛堝厓锛�" name="Recievemoney" id="Recievemoney" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.WeishouMoney.ToString("F2")" 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/FiOrderrecievemoney/EditCustomer.cshtml b/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/EditCustomer.cshtml
index da77c74..6072493 100644
--- a/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/EditCustomer.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/FiOrderrecievemoney/EditCustomer.cshtml
@@ -109,7 +109,7 @@
                                     <label class="text-left col-sm-1 col-md-1 control-label">   </label>
                                     <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="Recievemoney" id="Recievemoney" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="" oninput="if(value.length>8)value=value.slice(0,18)"  onkeyup="CheckNum(this);">
+                                        <input class="form-control" label="瀛樺叆閲戦锛堝厓锛�" name="Recievemoney" id="Recievemoney" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="" oninput="if(value.length>8)value=value.slice(0,18)"  onkeyup="CheckNum(this);">
 
                                     </div>
                                 </div>
diff --git a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml
index 991984e..77e40d5 100644
--- a/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/FiPiecerate/Edit.cshtml
@@ -103,46 +103,46 @@
                             <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">
-                                        <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">
-                                       
-                                    </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 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">
+
+            </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="Pieceratetype" class="form-control" name="Pieceratetype" data-placeholder="閫夋嫨 搴忓垪 ...">
-                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
-                                            @foreach (var item in Pieceratetype)
-                                            {
-                                                @if (!item.CodeSn.Equals(Model.Pieceratetype))
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true">
-                                                        @item.Comments
-                                                    </option>
-                                                }
-                                                else
-                                                {
-                                                    <option value="@item.CodeSn" hassubinfo="true" selected="selected">
-                                                        @item.Comments
-                                                    </option>
-                                                }
 
-                                            }
-                                            }
+            <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="Pieceratetype" class="form-control" name="Pieceratetype" data-placeholder="閫夋嫨 搴忓垪 ...">
+                    <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                    @foreach (var item in Pieceratetype)
+                    {
+                        @if (!item.CodeSn.Equals(Model.Pieceratetype))
+                        {
+                            <option value="@item.CodeSn" hassubinfo="true">
+                                @item.Comments
+                            </option>
+                        }
+                        else
+                        {
+                            <option value="@item.CodeSn" hassubinfo="true" selected="selected">
+                                @item.Comments
+                            </option>
+                        }
 
-                                        </select>
+                    }
+                    }
 
-                                    </div>
+                </select>
 
-                                  
+            </div>
 
 
-                                </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">
@@ -150,44 +150,6 @@
                                         <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>*@
-
-                                </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-2 col-md-2" grouptype="Vdata">
                                         <select id="Standard" class="form-control" name="Standard" data-placeholder="閫夋嫨 搴忓垪 ...">
                                             <option value="" hassubinfo="true">璇烽�夋嫨</option>
@@ -212,11 +174,49 @@
                                         </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="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>*@
+
+
+                                    @*<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="text" 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;">
+
+
+            <label grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎻愭垚鏍囧噯</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="Percent" id="Percent" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Percent" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+            </div>
+        </div>*@
 
 
 
@@ -225,7 +225,7 @@
 
 
 
-                                
+
                             </div>
                         </div>
                     </div>
diff --git a/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml
index 6734672..571c51b 100644
--- a/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/HrJixiaoticheng/Edit.cshtml
@@ -184,7 +184,7 @@
 
                                     <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})?/)">
+                                        <input class="form-control" label="鎻愭垚" name="Ticheng" id="Ticheng" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.TichengName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
@@ -223,7 +223,7 @@
 
                                     <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})?/)">
+                                        <input class="form-control" label="浠诲姟鍩烘暟" name="Renwu" id="Renwu" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true"  type="text" value="@Model.RenwuName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/OrderBanci/EditDtl.cshtml b/zhengcaioa/zhengcaioa/Views/OrderBanci/EditDtl.cshtml
index 491c584..682c326 100644
--- a/zhengcaioa/zhengcaioa/Views/OrderBanci/EditDtl.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/OrderBanci/EditDtl.cshtml
@@ -203,7 +203,7 @@
 
                                     <label class="text-right col-sm-1 col-md-1 control-label">鎺掑簭</label>
                                     <div class="col-sm-2 col-md-2">
-                                        <input class="form-control" label="鎺掑簭" name="Sort" id="Sort" labtype="txt" addvisible="true" maxlength="100" editvisible="true" reg="" ismust="true" type="number" value="@Model.Sort">
+                                        <input class="form-control" label="鎺掑簭" name="Sort" id="Sort" labtype="txt" addvisible="true" maxlength="100" editvisible="true" reg="" ismust="true" type="text" value="@Model.Sort">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/Project/ADDZhengfuProject.cshtml b/zhengcaioa/zhengcaioa/Views/Project/ADDZhengfuProject.cshtml
new file mode 100644
index 0000000..c47584b
--- /dev/null
+++ b/zhengcaioa/zhengcaioa/Views/Project/ADDZhengfuProject.cshtml
@@ -0,0 +1,681 @@
+锘緻model DTO.WebCrawler.ZhengfuProjectDTO
+@using DTO;
+@using zhengcaioa.Models;
+@{
+
+
+
+    List<Area> sheng = ViewData["sheng"] as List<Area>; //鐪�
+    List<Area> shi = ViewData["shi"] as List<Area>; //甯�
+    List<Area> quxian = ViewData["quxian"] as List<Area>; //鍖哄幙
+    List<SysCodeDtl> gglx = ViewData["gglx"] as List<SysCodeDtl>; //鍏憡绫诲瀷
+    List<SysCodeDtl> cgfs = ViewData["cgfs"] as List<SysCodeDtl>; //閲囪喘鏂瑰紡
+    List<SysCodeDtl> hyfl = ViewData["hyfl"] as List<SysCodeDtl>; //琛屼笟鍒嗙被
+
+    List<PageEntity> ActionInfo2 = ViewData["ActionInfo2"] as List<PageEntity>;
+}
+@{
+    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>&nbsp;鍩烘湰淇℃伅</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 grouptype="Vdata" class="text-right col-sm-1 col-md-1 control-label">鎵�灞炲尯鍩�<i class="red">*</i></label>
+
+                                    <div class="col-sm-1 col-md-1" grouptype="Vdata">
+                                        <select id="Sheng" class="form-control" name="Sheng" data-placeholder="閫夋嫨 搴忓垪 ..." style="font-weight:normal;">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in sheng)
+                                            {
+                                            @if (!item.CodeId.Equals(Model.Sheng))
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true">
+                                                @item.Name
+                                            </option>
+                                                }
+                                                else
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true" selected="selected">
+                                                @item.Name
+                                            </option>
+                                                }
+
+                                            }
+                                            }
+
+                                        </select>
+
+                                    </div>
+                                    <div class="col-sm-1 col-md-1" grouptype="Vdata">
+                                        <select id="City" class="form-control" name="City" data-placeholder="閫夋嫨 搴忓垪 ..." style="font-weight:normal;">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in shi)
+                                            {
+                                            @if (!item.CodeId.Equals(Model.City))
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true">
+                                                @item.Name
+                                            </option>
+                                                }
+                                                else
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true" selected="selected">
+                                                @item.Name
+                                            </option>
+                                                }
+
+                                            }
+                                            }
+
+                                        </select>
+
+                                    </div>
+                                    <div class="col-sm-1 col-md-1" grouptype="Vdata">
+                                        <select id="AreaId" class="form-control" name="AreaId" data-placeholder="閫夋嫨 搴忓垪 ..." style="font-weight:normal;">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in quxian)
+                                            {
+                                            @if (!item.CodeId.Equals(Model.RegionCode))
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true">
+                                                @item.Name
+                                            </option>
+                                                }
+                                                else
+                                                {
+                                            <option value="@item.CodeId" hassubinfo="true" selected="selected">
+                                                @item.Name
+                                            </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="Gglx" class="form-control" name="Gglx" data-placeholder="閫夋嫨 搴忓垪 ...">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in gglx)
+                                            {
+                                            @if (!item.CodeSn.Equals(Model.Gglx))
+                                                {
+                                            <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">
+                                        <select id="Cgfs" class="form-control" name="Cgfs" data-placeholder="閫夋嫨 搴忓垪 ...">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in cgfs)
+                                            {
+                                            @if (!item.CodeSn.Equals(Model.Cgfs))
+                                                {
+                                            <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 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="Pingmu" class="form-control" name="Pingmu" data-placeholder="閫夋嫨 搴忓垪 ...">
+                                            <option value="" hassubinfo="true">璇烽�夋嫨</option>
+                                            @foreach (var item in hyfl)
+                                            {
+                                            @if (!item.CodeSn.Equals(Model.Pingmu))
+                                                {
+                                            <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 id="NoticeTime" class="form-control" label="鍏憡鏃ユ湡" name="NoticeTime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.NoticeTime.ToString("yyyy-MM-dd HH:mm:ss")" readonly="readonly">
+
+                                    </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 id="OpenTenderCode" class="form-control" label="椤圭洰缂栧彿" name="OpenTenderCode" labtype="txt" addvisible="true" maxlength="100" editvisible="true" reg="" ismust="true" type="text" value="@Model.OpenTenderCode">
+
+                                    </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-8 col-md-8">
+                                        <input id="Title" class="form-control" label="椤圭洰鍚嶇О" name="Title" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.Title">
+
+                                    </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-8 col-md-8">
+                                        <input id="Shorttitle" class="form-control" label="椤圭洰鍚嶇О" name="Shorttitle" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.Shorttitle">
+
+                                    </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-8 col-md-8">
+                                        <input id="Pageurl" class="form-control" label="缃戦〉鍦板潃" name="Pageurl" labtype="txt" addvisible="true" maxlength="500" editvisible="true" reg="" ismust="true" type="text" value="@Model.Pageurl">
+
+                                    </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="Purchaser" class="form-control" label="閲囪喘浜�" name="Purchaser" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.Purchaser">
+
+                                    </div>
+
+                                    <label class="text-right col-sm-1 col-md-1 control-label">浠g悊鏈烘瀯</label>
+                                    <div class="col-sm-2 col-md-2">
+                                        <input id="Agency" class="form-control" label="浠g悊鏈烘瀯" name="Agency" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.Agency">
+
+                                    </div>
+                                    <label class="text-right col-sm-1 col-md-1 control-label">棰勭畻閲戦锛堝厓锛�</label>
+                                    <div class="col-sm-2 col-md-2">
+                                        <input id="Budget" class="form-control" label="棰勭畻閲戦" name="Budget" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.Budget" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,4})?/)">
+
+                                    </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-11 col-md-11">
+                                        <textarea class="form-control bt" placeholder="閫氳繃F12鑾峰彇鐨刪tml婧愪唬鐮佹斁缃湪杩欓噷锛屽闇�瑕佹墜鍔ㄧ紪杈戦〉闈㈣鍦ㄥ瘜鏂囨湰缂栬緫" id="Content" name="Content" title="椤甸潰鍐呭" isempty="" maxlength="900000" 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.Content</textarea>
+                                    </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-5 col-md-5">
+                                        @*<textarea class="form-control bt" id="DocContent" name="DocContent" title="鍏枃鍐呭" isempty="" maxlength="4000" length="long">@Model.DocContent</textarea>*@
+                                        <!-- 鍔犺浇缂栬緫鍣ㄧ殑瀹瑰櫒 -->
+                                        <script id="DocContent" name="Content1" type="text/plain">
+                                          @Html.Raw(Model.Content)
+                                        </script>
+                                    </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 Delete" href="javascript:void(0)" onclick="delPosition();" style="margin-left:4px; border-radius:4px;display:none;">
+                    <i class="glyphicon glyphicon-remove"></i>&nbsp;&nbsp;<span class="bold">鍒犻櫎</span>
+                </a>
+
+                <a class="btn btn-success Update" href="javascript:void(0)" onclick="savePosition();" style="margin-left: 4px; border-radius: 4px; display: none;">
+                    <i class="glyphicon glyphicon-ok"></i>&nbsp;&nbsp;<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"
+        };
+
+        $("#Cgfs").chosen();
+        $("#Gglx").chosen();
+        $("#Pingmu").chosen();
+
+        var Content1 = document.getElementById("Content");
+
+        Content1.style.height = Content1.scrollHeight + 'px';
+
+        laydate({ elem: "#NoticeTime", format: 'YYYY-MM-DD hh:mm:ss', istime: true, event: "focus" });
+         var id = '@Model.Id';
+
+        var delPosition = function () {
+            if (id == null || id == '') {
+                toastr.warning("璇峰厛淇濆瓨");
+                return;
+            }
+            $.ajax({
+                type: "GET",
+                url: "/AdmDocDoc/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 () {
+
+            var ueue = ue4.getContent();
+           // var ueue = ue4.getPlainTxt();
+
+            if ($("#Sheng").val() == '') {
+                toastr.warning("鎵�灞炲尯鍩熶笉鑳戒负绌�");
+                return;
+            }
+            if ($("#Gglx").val() == '') {
+                toastr.warning("鍏憡绫诲瀷涓嶈兘涓虹┖");
+                return;
+            }
+            if ($("#Cgfs").val() == '') {
+                toastr.warning("閲囪喘鏂瑰紡涓嶈兘涓虹┖");
+                return;
+            }
+            if ($("#Pingmu").val() == '') {
+                toastr.warning("鍝佺洰涓嶈兘涓虹┖");
+                return;
+            }
+            if ($("#NoticeTime").val() == '') {
+                toastr.warning("鍏憡鏃ユ湡涓嶈兘涓虹┖");
+                return;
+            }
+
+            if ($.trim($("#OpenTenderCode").val() )== '') {
+                toastr.warning("椤圭洰缂栧彿涓嶈兘涓虹┖");
+                return;
+            }
+            if ($.trim($("#Title").val()) == '') {
+                toastr.warning("椤圭洰鍚嶇О锛堥暱锛変笉鑳戒负绌�");
+                return;
+            }
+            if ($.trim($("#Pageurl").val()) == '') {
+                toastr.warning("缃戦〉鍦板潃涓嶈兘涓虹┖");
+                return;
+            }
+
+            if ($.trim($("#Content").val()) == '' && $.trim(ueue) == '') {
+                toastr.warning("缃戦〉绫诲涓嶈兘涓虹┖");
+                return;
+            }
+
+
+
+            var data = { id: $("#Id").val(), Sheng: $("#Sheng").val(), City: $("#City").val(), RegionCode: $("#AreaId").val(), Gglx: $("#Gglx").val(), Cgfs: $("#Cgfs").val(), Pingmu: $("#Pingmu").val(), NoticeTime: $("#NoticeTime").val(), OpenTenderCode: $("#OpenTenderCode").val(), Title: $("#Title").val(), Pageurl: $("#Pageurl").val(), Purchaser: $("#Purchaser").val(), Agency: $("#Agency").val(), Budget: $("#Budget").val(), Content: $("#Content").val(), Content1: ueue}
+            $.ajax({
+                type: "POST",
+                url: "/Project/SaveZhengfuProject",
+                dataType: "json",
+                global: false,
+                data: 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/ADDZhengfuProject");
+                            }
+
+                        }
+                        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;
+        }
+
+         var ActionInfo22 = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ActionInfo2))';
+
+
+
+        $(function () {
+            var data = JSON.parse(ActionInfo22);
+            for (var o in data) {
+                $("." + data[o].PageShortcut).show();
+
+            }
+        });
+
+
+        $("#Sheng").change(function () {
+
+            var sheng = $("#Sheng").val();
+            $.ajax({
+                type: "GET",
+                url: "/Project/getCity?shengid=" + sheng,
+                dataType: "json",
+                global: false,
+                data: "",
+                success: function (data) {
+
+                    var city = $("#City");
+                    city.find('option').remove();
+                    var aaa = '<option value="" hassubinfo="true">璇烽�夋嫨</option>';
+                    city.append(aaa);
+                    if (data.length > 0) {
+                        for (var i = 0; i < data.length; i++) {
+
+                            var o = '<option value="' + data[i].CodeId + '" hassubinfo="true">' + data[i].Name + '</option>';
+                            city.append(o);
+                        }
+                    }
+                },
+                error: function () {
+
+
+                    parent.layer.msg('澶辫触', { icon: 5 });
+                }
+            });
+        });
+
+
+        $("#City").change(function () {
+
+            var city = $("#City").val();
+            $.ajax({
+                type: "GET",
+                url: "/Project/getAreaId?cityid=" + city,
+                dataType: "json",
+                global: false,
+                data: "",
+                success: function (data) {
+
+                    var quxian = $("#AreaId");
+                    quxian.find('option').remove();
+                    var aaa = '<option value="" hassubinfo="true">璇烽�夋嫨</option>';
+                    quxian.append(aaa);
+                    if (data.length > 0) {
+                        for (var i = 0; i < data.length; i++) {
+
+                            var o = '<option value="' + data[i].CodeId + '" hassubinfo="true">' + data[i].Name + '</option>';
+                            quxian.append(o);
+                        }
+                    }
+                },
+                error: function () {
+
+
+                    parent.layer.msg('澶辫触', { icon: 5 });
+                }
+            });
+        });
+
+        $("#Pageurl").change(function () {
+
+            var pageurl = $("#Pageurl").val();
+            $.ajax({
+                type: "GET",
+                url: "/Project/getPageurl?Pageurl=" + pageurl + "&Id=" + $("#Id").val(),
+                dataType: "json",
+                global: false,
+                data: "",
+                success: function (data) {
+
+                    if (!data.Result) {
+                        toastr.warning("璇ラ〉闈㈠凡缁忓瓨鍦�");
+                    }
+
+
+                    
+
+                   
+                },
+                error: function () {
+
+
+                    parent.layer.msg('澶辫触', { icon: 5 });
+                }
+            });
+        });
+
+        
+    </script>
+</body>
+</html>
\ No newline at end of file
diff --git a/zhengcaioa/zhengcaioa/Views/Project/indexZhengfuProject.cshtml b/zhengcaioa/zhengcaioa/Views/Project/indexZhengfuProject.cshtml
new file mode 100644
index 0000000..897a6c9
--- /dev/null
+++ b/zhengcaioa/zhengcaioa/Views/Project/indexZhengfuProject.cshtml
@@ -0,0 +1,253 @@
+锘緻using DTO;
+@{
+    ViewBag.Title = "Liaotian";
+    Layout = "~/Views/Shared/_Layout_Search.cshtml";
+
+    List<PageEntity> ActionInfo2 = ViewData["ActionInfo2"] as List<PageEntity>;
+
+     
+}
+@section headerStyle{
+    <script type="text/javascript">
+        var gglx = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.gglx))';
+
+        var cgfs = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.cgfs))';
+
+         var shengDropDown = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.ShengDropDown))';
+        var Creater = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.Creater))';
+
+
+          var Baomingtimebegin = '@Html.Raw(ViewBag.Baomingtimebegin)';
+        var Baomingtimeend = '@Html.Raw(ViewBag.Baomingtimeend)';
+
+        loseherght = 110;
+        dataCol = [
+            { label: 'id', name: 'Id', labtype: 'txt', hidden: true },
+
+            {
+                label: '鍏憡鏃堕棿', name: 'NoticeTime', labtype: 'txt', hidden: false, width: 90 ,
+                formatter: function (v) {
+                    return $.trim(v) == '' ? '' : $.trim(v).substring(0, 10); //$.trim(v).replace("T"," ")
+                }
+            },
+            { label: '椤圭洰鍖哄煙', name: 'ShengName', labtype: 'txt', hidden: false, width: 160  },
+            {
+                label: '椤圭洰鍚嶇О', name: 'Title', labtype: 'txt', hidden: false, width: 500 ,
+                formatter: function (cellvalue, options, rowObject) {
+
+                    
+
+                    return "<a onclick=\"OpenWindow('" + cellvalue.replaceAll("\"", "") + "','98%','100%', '/Project/ADDZhengfuProject?id=" + rowObject.Id + "')\"  > " + cellvalue.replaceAll("\"", "") + " </a>";
+                }
+            }, { label: '椤圭洰缂栧彿', name: 'OpenTenderCode', labtype: 'txt', hidden: false, width: 140 },
+            { label: '鍏憡绫诲瀷', name: 'GglxName', labtype: 'txt', hidden: false},
+            { label: '閲囪喘鏂瑰紡', name: 'CgfsName', labtype: 'txt', hidden: false },
+            { label: '鍒涘缓浜�', name: 'CreaterName', labtype: 'txt', hidden: false },
+             
+
+        ];
+        dataUrl = "/Project/GetZhengfuProjectList?StartTime=" + Baomingtimebegin + "|" + Baomingtimeend ;
+        searchCol = [
+            //{ label: '鍏憡鏃堕棿', name: 'StartTimestar', labtype: 'date', hidden: false },
+            //{ label: '--', name: 'StartTimeend', labtype: 'date', hidden: false, cwidth: '1%', cccwidth: '15%' },
+            { label: '鍏憡鏃堕棿', name: 'StartTime', labtype: 'datearea', hidden: false },
+            { label: '鐪�', name: 'Sheng', labtype: 'combox', hidden: false, data: JSON.parse(shengDropDown), cwidth: '2%', cccwidth: '6%' },
+            { label: '', name: 'City', labtype: 'combox', hidden: false, data: JSON.parse('[]'), cwidth: '0%', cccwidth: '6%' },
+            { label: '', name: 'AreaId', labtype: 'combox', hidden: false, data: JSON.parse('[]'), cwidth: '0%', cccwidth: '6%' },
+            { label: '鍏憡缂栧彿', name: 'Number', labtype: 'txt', hidden: false },
+            { label: '鍏憡鍚嶇О', name: 'Name', labtype: 'txt', hidden: false },
+
+            { label: '鍏憡绫诲瀷', name: 'Gglx', labtype: 'combox', hidden: false, data: JSON.parse(gglx)/*, cwidth: '5%', cccwidth: '8%' */ },
+            { label: '閲囪喘鏂瑰紡', name: 'Cgfs', labtype: 'combox', hidden: false, data: JSON.parse(cgfs) },
+
+
+
+            { label: '褰曞叆鏃堕棿', name: 'Createtime', labtype: 'datearea', hidden: false },
+            { label: '褰曞叆浜�', name: 'Creater', labtype: 'combox', hidden: false, data: JSON.parse(Creater)/*, cwidth: '5%', cccwidth: '8%'*/ },
+
+ 
+
+
+
+        ];
+        var _pageAdd = function () {
+            OpenWindow("鏂板椤圭洰", "98%", "90%", "/Project/ADDZhengfuProject");
+        }
+
+        var _pageSearch = function () {
+
+            $("#jqGrid").jqGrid('setGridParam', {
+                url: dataUrl = "/Project/GetZhengfuProjectList" , postData: jsons, page: 1
+            }); //閲嶆柊杞藉叆
+            var jsons = GetSearchEnd();
+            if (jsons == false) {
+                msg.info("璇峰綍鍏ユ煡璇㈡潯浠�");
+                return false;
+            }
+            LoadGrid(jsons);
+        }
+
+
+        function LoadGrid(jdata) {
+
+            var pages = $('.ui-pg-input').val();
+            var paggg = parseInt(pages);
+
+            //alert(paggg);
+
+            if (paggg == NaN || paggg==0 ) {
+                paggg=1
+            }
+
+            var postData = $('#jqGrid').jqGrid("getGridParam", "postData");
+            $.each(lastSearch, function (k, v) {
+                delete postData[k];
+            });
+            lastSearch = jdata;
+            //   alert(JSON.stringify(jdata));
+            //  $('#jqGrid').jqGrid('clearGridData');
+
+            $.extend(jdata, { totalrows: 0 });
+
+            $("#jqGrid").jqGrid('setGridParam', {
+                postData: jdata, page: paggg
+            }); //閲嶆柊杞藉叆
+            $("#jqGrid").trigger("reloadGrid");
+            // $("#jqGrid").trigger("reloadGrid");
+
+            toSetTooBarVal();
+
+        }
+
+        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">
+
+        function send() {
+
+            var msg = $("#PBSSheng");
+
+
+            if (msg.length > 0) {
+                $("#PBSSheng").change(function () {
+                    var sheng = $("#PBSSheng").val();
+                    $.ajax({
+                        type: "GET",
+                        url: "/Project/getCity?shengid=" + sheng,
+                        dataType: "json",
+                        global: false,
+                        data: "",
+                        success: function (data) {
+
+                            var city = $("#PBSCity");
+                            city.find('option').remove();
+                            var aaa = '<option value="" hassubinfo="true">&nbsp;</option>';
+                            city.append(aaa);
+                            if (data.length > 0) {
+                                for (var i = 0; i < data.length; i++) {
+
+                                    var o = '<option value="' + data[i].CodeId + '" hassubinfo="true">' + data[i].Name + '</option>';
+                                    city.append(o);
+                                }
+                            }
+                            $("#PBSCity").trigger('chosen:updated');//鏇存柊閫夐」
+                        },
+                        error: function () {
+
+
+                            parent.layer.msg('澶辫触', { icon: 5 });
+                        }
+                    });
+                });
+
+            } else {
+                setTimeout(send, 1000);
+            }
+        }
+
+
+        send();
+
+
+
+        function sendCity() {
+
+            var msg = $("#PBSCity");
+
+
+            if (msg.length > 0) {
+                $("#PBSCity").change(function () {
+
+                    var city = $("#PBSCity").val();
+                    $.ajax({
+                        type: "GET",
+                        url: "/Project/getAreaId?cityid=" + city,
+                        dataType: "json",
+                        global: false,
+                        data: "",
+                        success: function (data) {
+
+                            var quxian = $("#PBSAreaId");
+                            quxian.find('option').remove();
+                            var aaa = '<option value="" hassubinfo="true">&nbsp;</option>';
+                            quxian.append(aaa);
+                            if (data.length > 0) {
+                                for (var i = 0; i < data.length; i++) {
+
+                                    var o = '<option value="' + data[i].CodeId + '" hassubinfo="true">' + data[i].Name + '</option>';
+                                    quxian.append(o);
+                                }
+                            }
+                            $("#PBSAreaId").trigger('chosen:updated');//鏇存柊閫夐」
+                        },
+                        error: function () {
+
+
+                            parent.layer.msg('澶辫触', { icon: 5 });
+                        }
+                    });
+                });
+
+            } else {
+                setTimeout(sendCity, 1000);
+            }
+        }
+
+
+        sendCity();
+
+
+
+        $(function () {
+            $("#PBSAreaId").parent().next().remove();
+            $("#PBSName").parent().after("<br>");
+            $("#PBSCgfs").parent().next().remove();
+            
+
+            $("#PBSStartTimeend").val(Baomingtimeend);
+
+            $("#PBSStartTimestart").val(Baomingtimebegin);
+
+        });
+
+    </script>
+}
diff --git a/zhengcaioa/zhengcaioa/Views/ServiceCharge/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/ServiceCharge/Edit.cshtml
index c39278a..ae17b59 100644
--- a/zhengcaioa/zhengcaioa/Views/ServiceCharge/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/ServiceCharge/Edit.cshtml
@@ -139,7 +139,7 @@
 
                                     <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="Danjia" id="Danjia" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.DanjiaName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="鍗曚环(鍏�)" name="Danjia" id="Danjia" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.DanjiaName" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
 
diff --git a/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml b/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
index a61072d..9fdd10b 100644
--- a/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
@@ -144,8 +144,8 @@
                 <tr>
                     <td class="title">璇峰亣鏃堕暱</td>
                     <td colspan="4">
-                        <input class="layui-input data" style="width:100px !important;float: left;" type="number" value="@Model.LaveDay" name="LaveDay" id="LaveDay" min="0" step="1" readonly="readonly">澶�
-                        <input class="layui-input data" style="width:100px !important;" type="number" value="@Model.LavehHour" name="LavehHour" id="LavehHour" min="0" step="1" readonly="readonly">灏忔椂
+                        <input class="layui-input data" style="width:100px !important;float: left;" type="text" value="@Model.LaveDay" name="LaveDay" id="LaveDay" min="0" step="1" readonly="readonly">澶�
+                        <input class="layui-input data" style="width:100px !important;" type="text" value="@Model.LavehHour" name="LavehHour" id="LavehHour" min="0" step="1" readonly="readonly">灏忔椂
                     </td>
                 </tr>
                 <tr>
diff --git a/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml b/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml
index b02ad52..f403573 100644
--- a/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/Signin/AttendanceRule.cshtml
@@ -114,8 +114,8 @@
                                 <h5 style="color:cornflowerblue;">宸ヤ綔鏃�:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-6 col-md-6">
-                                        鍛� &nbsp;<input type="number" value="@Model.WeekStart" name="WeekStart" id="WeekStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">&nbsp;-
-                                        鍛� &nbsp;<input type="number" value="@Model.WeekEnd" name="WeekEnd" id="WeekEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        鍛� &nbsp;<input type="text" value="@Model.WeekStart" name="WeekStart" id="WeekStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">&nbsp;-
+                                        鍛� &nbsp;<input type="text" value="@Model.WeekEnd" name="WeekEnd" id="WeekEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
                                         <input type="hidden" value="@Model.Id" id="Id" name="Id">
                                     </div>
                                 </div>
@@ -124,8 +124,8 @@
                                 <h5 style="color:cornflowerblue;">涓婄彮鏃堕棿:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-6 col-md-6">
-                                        <span>涓婂崍锛�</span><input type="number" value="@Model.WorkingStart" name="WorkingStart" id="WorkingStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">-
-                                        <input type="number" value="@Model.WorkingEnd" name="WorkingEnd" id="WorkingEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <span>涓婂崍锛�</span><input type="text" value="@Model.WorkingStart" name="WorkingStart" id="WorkingStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">-
+                                        <input type="text" value="@Model.WorkingEnd" name="WorkingEnd" id="WorkingEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
                                     </div>
 
                                 </div>
@@ -133,8 +133,8 @@
 
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-6 col-md-6">
-                                        <span>涓嬪崍锛�</span><input type="number" value="@Model.OffworkStart" name="OffworkStart" id="OffworkStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">-
-                                        <input type="number" value="@Model.OffworkEnd" name="OffworkEnd" id="OffworkEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <span>涓嬪崍锛�</span><input type="text" value="@Model.OffworkStart" name="OffworkStart" id="OffworkStart" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">-
+                                        <input type="text" value="@Model.OffworkEnd" name="OffworkEnd" id="OffworkEnd" style="width:100px;" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
                                     </div>
                                 </div>
 
@@ -142,17 +142,17 @@
                                 @*<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})?/)">鍏�
+                <input type="text" 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>*@
 
                                 <h5 style="color:cornflowerblue;">杩熷埌鎵f:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-8 col-md-8">
-                                        <span>15鍒嗛挓</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.LatePayment1" name="LatePayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
-                                        <span>30鍒嗛挓</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.LatePayment2" name="LatePayment2" 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.LatePayment3" name="LatePayment3" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
-                                        <span>2灏忔椂</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.LatePayment4" name="LatePayment4" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
+                                        <span>15鍒嗛挓</span><input style="width:150px" type="text" min="0.01" step="0.01" max="999999" value="@Model.LatePayment1" name="LatePayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
+                                        <span>30鍒嗛挓</span><input style="width:150px" type="text" min="0.01" step="0.01" max="999999" value="@Model.LatePayment2" name="LatePayment2" 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="text" min="0.01" step="0.01" max="999999" value="@Model.LatePayment3" name="LatePayment3" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
+                                        <span>2灏忔椂</span><input style="width:150px" type="text" min="0.01" step="0.01" max="999999" value="@Model.LatePayment4" name="LatePayment4" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
 
                                     </div>
                                 </div>
@@ -160,29 +160,29 @@
                                 <h5 style="color:cornflowerblue;">鏃峰伐鎵f:</h5>
                                 <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>鏃峰伐鎵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})?/)">鍏�*@
+                                        <span>杩熷埌</span><input style="width:150px" type="text" 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>鏃峰伐鎵f</span><input style="width:150px" type="text" 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="text" 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>
 
                                 <h5 style="color:cornflowerblue;">浜嬪亣鎵f:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-8 col-md-8">
-                                        <span>1灏忔椂</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment1" name="PersonalPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
-                                        <span>2灏忔椂</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment2" name="PersonalPayment2" 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.PersonalPayment3" name="PersonalPayment3" 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.PersonalPayment4" name="PersonalPayment4" 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="text" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment1" name="PersonalPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
+                                        <span>2灏忔椂</span><input style="width:150px" type="text" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment2" name="PersonalPayment2" 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="text" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment3" name="PersonalPayment3" 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="text" min="0.01" step="0.01" max="999999" value="@Model.PersonalPayment4" name="PersonalPayment4" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
                                     </div>
                                 </div>
 
                                 <h5 style="color:cornflowerblue;">鐥呭亣鎵f:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;">
                                     <div class="col-sm-8 col-md-8">
-                                        <span>1灏忔椂</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.SickPayment1" name="SickPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
-                                        <span>2灏忔椂</span><input style="width:150px" type="number" min="0.01" step="0.01" max="999999" value="@Model.SickPayment2" name="SickPayment2" 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.SickPayment3" name="SickPayment3" 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.SickPayment4" name="SickPayment4" 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="text" min="0.01" step="0.01" max="999999" value="@Model.SickPayment1" name="SickPayment1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
+                                        <span>2灏忔椂</span><input style="width:150px" type="text" min="0.01" step="0.01" max="999999" value="@Model.SickPayment2" name="SickPayment2" 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="text" min="0.01" step="0.01" max="999999" value="@Model.SickPayment3" name="SickPayment3" 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="text" min="0.01" step="0.01" max="999999" value="@Model.SickPayment4" name="SickPayment4" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">鍏�
                                     </div>
                                 </div>
 
@@ -302,7 +302,7 @@
                                     </div>
                                 </div>
 
-                                
+
 
                                 <h5 style="color:cornflowerblue;">鍔犵彮琛ュ姪:</h5>
                                 <div class="clearfix layer-area" style="padding-bottom:15px;height:45px;">
diff --git a/zhengcaioa/zhengcaioa/Views/Systemsetting/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/Systemsetting/Edit.cshtml
index d2297ff..7b270fd 100644
--- a/zhengcaioa/zhengcaioa/Views/Systemsetting/Edit.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/Systemsetting/Edit.cshtml
@@ -153,49 +153,49 @@
                                 <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="Backday" id="Backday" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.Backday" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="閿�鍋囧ぉ鏁帮紙澶�/鏈堬級" name="Backday" id="Backday" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.Backday" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="PersonalLeave" id="PersonalLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.PersonalLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="浜嬪亣澶╂暟锛堝ぉ/鏈堬級" name="PersonalLeave" id="PersonalLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.PersonalLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="SickLeave" id="SickLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.SickLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="鐥呭亣澶╂暟锛堝ぉ/鏈堬級" name="SickLeave" id="SickLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.SickLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="BereavementLeave" id="BereavementLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.BereavementLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="涓у亣澶╂暟锛堝ぉ/鏈堬級" name="BereavementLeave" id="BereavementLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.BereavementLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="WeddingLeave" id="WeddingLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.WeddingLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="濠氬亣澶╂暟锛堝ぉ/鏈堬級" name="WeddingLeave" id="WeddingLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.WeddingLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="MaternityLeave" id="MaternityLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.MaternityLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="浜у亣(濂�)" name="MaternityLeave" id="MaternityLeave" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.MaternityLeave" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="MaternityLeaveMan" id="MaternityLeaveMan" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.MaternityLeaveMan" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="浜у亣(鐢�)" name="MaternityLeaveMan" id="MaternityLeaveMan" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.MaternityLeaveMan" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </div>
                                 </div>
@@ -203,14 +203,14 @@
                                 <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="SocialSecurity" id="SocialSecurity" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.SocialSecurity" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="绾崇◣绾�" name="SocialSecurity" id="SocialSecurity" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.SocialSecurity" 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="BasicSocialSecurity" id="BasicSocialSecurity" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.BasicSocialSecurity" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
+                                        <input class="form-control" label="鍩烘湰绀句繚" name="BasicSocialSecurity" id="BasicSocialSecurity" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.BasicSocialSecurity" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)">
 
                                     </div>
                                 </div>
@@ -219,14 +219,14 @@
                                 <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="SettlementTime" id="SettlementTime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.SettlementTime" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="宸ヨ祫缁撶畻锛堝彿锛�" name="SettlementTime" id="SettlementTime" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.SettlementTime" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </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="NumberOfLate" id="NumberOfLate" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="number" value="@Model.NumberOfLate" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
+                                        <input class="form-control" label="鏈�澶氳繜鍒帮紙娆★級" name="NumberOfLate" id="NumberOfLate" labtype="txt" addvisible="true" editvisible="true" reg="" ismust="true" type="text" value="@Model.NumberOfLate" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')">
 
                                     </div>
                                 </div>
diff --git a/zhengcaioa/zhengcaioa/appsettings.Development.json b/zhengcaioa/zhengcaioa/appsettings.Development.json
index e86b578..b219d0d 100644
--- a/zhengcaioa/zhengcaioa/appsettings.Development.json
+++ b/zhengcaioa/zhengcaioa/appsettings.Development.json
@@ -2,7 +2,8 @@
   "ConnectionStrings": {
     "DefaultConnection": "server=.;database=zhengcaioa;uid=sa;pwd=123456;",
     "zcwebConnection": "server=localhost;database=zcweb;uid=sa;pwd=123456;",
-    "zcUserInfoNConnection": "server=localhost;database=zcUserInfoN_db;uid=sa;pwd=123456;"
+    "zcUserInfoNConnection": "server=localhost;database=zcUserInfoN_db;uid=sa;pwd=123456;",
+    "WebCrawlerConnection": "server=localhost;database=WebCrawler;uid=sa;pwd=123456;"
   },
   "Logging": {
     "LogLevel": {
diff --git a/zhengcaioa/zhengcaioa/appsettings.json b/zhengcaioa/zhengcaioa/appsettings.json
index 1750af0..7dc674d 100644
--- a/zhengcaioa/zhengcaioa/appsettings.json
+++ b/zhengcaioa/zhengcaioa/appsettings.json
@@ -2,7 +2,8 @@
   "ConnectionStrings": {
     "DefaultConnection": "server=172.26.97.184;database=zhengcaioa;uid=sa;pwd=Za20222812;",
     "zcwebConnection": "server=172.26.97.184;database=zcweb;uid=sa;pwd=Za20222812;",
-    "zcUserInfoNConnection": "server=172.26.97.184;database=zcUserInfoN_db;uid=sa;pwd=Za20222812;"
+    "zcUserInfoNConnection": "server=172.26.97.184;database=zcUserInfoN_db;uid=sa;pwd=Za20222812;",
+    "WebCrawlerConnection": "server=172.26.97.184;database=WebCrawler;uid=sa;pwd=Za20222812;"
   },
   "Logging": {
     "LogLevel": {

--
Gitblit v1.9.1