Esempio n. 1
0
        /// <summary>
        /// 修改知识库的类别( 某一类别下的所有知识库包括子类别的所有知识库 )
        /// </summary>
        public void ChangeArtCate(long cateId, long userId, int parentId)
        {
            var subArt  = _dal.GetArtByCate(cateId);
            var dgDal   = new d_general_dal();
            var gBll    = new GeneralBLL();
            var subMenu = dgDal.GetGeneralByParentId(cateId);

            if (subArt != null && subArt.Count > 0)
            {
                foreach (var art in subArt)
                {
                    subArt.ForEach(_ => {
                        _.kb_category_id = parentId;
                        UpdateKnow(_, userId);
                    });
                }
            }
            if (subMenu != null && subMenu.Count > 0)
            {
                foreach (var menu in subMenu)
                {
                    ChangeArtCate(menu.id, userId, parentId);
                    dgDal.SoftDelete(menu, userId);
                    OperLogBLL.OperLogAdd <d_general>(menu, menu.id, userId, OPER_LOG_OBJ_CATE.General_Code, "删除知识库目录");
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 新增工时
        /// </summary>
        /// <param name="weList"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool AddWorkEntry(List <sdk_work_entry> weList, long userId)
        {
            var bll = new TimeOffPolicyBLL();
            tst_timeoff_balance_dal balDal = new tst_timeoff_balance_dal();
            long batchId = dal.GetNextId("seq_entry_batch");

            foreach (var we in weList)
            {
                we.id             = dal.GetNextIdCom();
                we.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
                we.update_time    = we.create_time;
                we.create_user_id = userId;
                we.update_user_id = userId;
                we.batch_id       = batchId;

                dal.Insert(we);
                OperLogBLL.OperLogAdd <sdk_work_entry>(we, we.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SDK_WORK_ENTRY, "新增工时");

                if (we.task_id == (long)CostCode.Sick)  // 病假需要在假期余额表添加记录
                {
                    bll.UpdateTimeoffBalance(we.resource_id.Value, Tools.Date.DateHelper.TimeStampToUniversalDateTime(we.start_time.Value), (CostCode)we.task_id);
                    //var balance = bll.UpdateTimeoffBalance((long)we.resource_id, Tools.Date.DateHelper.TimeStampToDateTime((long)we.start_time), 0 - (decimal)we.hours_billed);
                    //tst_timeoff_balance bal = new tst_timeoff_balance();
                    //bal.object_id = we.id;
                    //bal.object_type_id = 2214;
                    //bal.task_id = we.task_id;
                    //bal.resource_id = (long)we.resource_id;
                    //bal.balance = balance - (decimal)we.hours_billed;
                    //balDal.Insert(bal);
                }
            }

            return(true);
        }
Esempio n. 3
0
        /// <summary>
        /// 服务新增
        /// </summary>
        /// <param name="ser"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool AddService(ivt_service ser, long userId)
        {
            ivt_service     service = new ivt_service();
            ivt_service_dal dal     = new ivt_service_dal();

            service.id                  = dal.GetNextIdCom();
            service.create_time         = Tools.Date.DateHelper.ToUniversalTimeStamp();
            service.update_time         = service.create_time;
            service.create_user_id      = userId;
            service.update_user_id      = userId;
            service.name                = ser.name;
            service.description         = ser.description;
            service.invoice_description = ser.invoice_description;
            service.sla_id              = ser.sla_id;
            service.vendor_account_id   = ser.vendor_account_id;
            service.period_type_id      = ser.period_type_id;
            service.unit_cost           = ser.unit_cost;
            service.unit_price          = ser.unit_price;
            service.cost_code_id        = ser.cost_code_id;
            service.is_active           = ser.is_active;

            dal.Insert(service);
            OperLogBLL.OperLogAdd <ivt_service>(service, service.id, userId, DTO.DicEnum.OPER_LOG_OBJ_CATE.IVT_SERVICE, "新增服务");
            return(true);
        }
Esempio n. 4
0
        private void SaveProductSn(string snList, long productId, long userId)
        {
            if (string.IsNullOrEmpty(snList))
            {
                return;
            }
            var sns = snList.Split('\n');

            ivt_warehouse_product_sn_dal snDal = new ivt_warehouse_product_sn_dal();

            foreach (var sn in sns)
            {
                string s = sn.Trim();
                if (string.IsNullOrEmpty(s))
                {
                    continue;
                }
                ivt_warehouse_product_sn psn = new ivt_warehouse_product_sn();
                psn.id                   = dal.GetNextIdCom();
                psn.create_time          = Tools.Date.DateHelper.ToUniversalTimeStamp();
                psn.create_user_id       = userId;
                psn.update_time          = psn.create_time;
                psn.update_user_id       = userId;
                psn.warehouse_product_id = productId;
                psn.sn                   = s;

                snDal.Insert(psn);
                OperLogBLL.OperLogAdd <ivt_warehouse_product_sn>(psn, psn.id, userId, DicEnum.OPER_LOG_OBJ_CATE.INVENTORY_ITEM_SN, "新增库存产品串号");
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 删除知识库目录
        /// </summary>
        public bool DeleteKnowMenu(long cateId, long userId, ref string failReason)
        {
            var dgDal = new d_general_dal();
            var cate  = dgDal.FindNoDeleteById(cateId);

            if (cate == null)
            {
                return(true);
            }
            if (cate.parent_id == null)
            {
                failReason = "根目录不可删除";
                return(false);
            }
            var gBll = new GeneralBLL();

            ChangeArtCate(cateId, userId, (int)cate.parent_id);
            //var subMenu = dgDal.GetGeneralByParentId(cateId);
            //if (subMenu != null && subMenu.Count > 0)
            //    subMenu.ForEach(_ => {
            //        _.parent_id = cate.parent_id;
            //        gBll.EditGeneral(_,userId);
            //    });
            //var subArt = _dal.GetArtByCate(cateId);
            //if(subArt!=null&& subArt.Count > 0)
            //    subArt.ForEach(_=> {
            //        _.kb_category_id = (int)cate.parent_id;
            //        UpdateKnow(_,userId);
            //    });
            dgDal.SoftDelete(cate, userId);
            OperLogBLL.OperLogAdd <d_general>(cate, cate.id, userId, OPER_LOG_OBJ_CATE.General_Code, "删除知识库目录");
            return(true);
        }
Esempio n. 6
0
        /// <summary>
        /// 新增评论
        /// </summary>
        public bool SaveComment(long artId, string comment, long userId)
        {
            var thisArt  = _dal.FindNoDeleteById(artId);
            var thisUser = new sys_resource_dal().FindNoDeleteById(userId);

            if (thisArt != null && !string.IsNullOrEmpty(comment) && thisUser != null)
            {
                var skacDal = new sdk_kb_article_comment_dal();
                var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
                var comm    = new sdk_kb_article_comment()
                {
                    comment        = comment,
                    create_time    = timeNow,
                    create_user_id = userId,
                    id             = skacDal.GetNextIdCom(),
                    update_time    = timeNow,
                    update_user_id = userId,
                    creator_name   = thisUser.name,
                    kb_article_id  = thisArt.id,
                };
                skacDal.Insert(comm);
                OperLogBLL.OperLogAdd <sdk_kb_article_comment>(comm, comm.id, userId, OPER_LOG_OBJ_CATE.SDK_KONWLEDGE_COMMENT, "新增知识库评论");
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 7
0
        /// <summary>
        /// 新增工作组员工
        /// </summary>
        public bool AddGroupResource(sys_workgroup_resouce group, long userId)
        {
            sys_workgroup_resouce_dal swrDal = new sys_workgroup_resouce_dal();

            group.id = swrDal.GetNextIdCom();
            swrDal.Insert(group);
            OperLogBLL.OperLogAdd <sys_workgroup_resouce>(group, group.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SYS_WORKGROUP_RESOURCE, "");
            return(true);
        }
Esempio n. 8
0
 /// <summary>
 /// 新增队列
 /// </summary>
 public bool AddQueue(sys_department queue, long userId)
 {
     queue.id             = _dal.GetNextIdCom();
     queue.create_time    = queue.update_time = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     queue.create_user_id = queue.update_user_id = userId;
     _dal.Insert(queue);
     OperLogBLL.OperLogAdd <sys_department>(queue, queue.id, userId, OPER_LOG_OBJ_CATE.DEPARTMENT, "");
     return(true);
 }
Esempio n. 9
0
 /// <summary>
 /// 费用报表 管理(新增,编辑)
 /// </summary>
 public bool ReportManage(sdk_expense_report report, long userId, bool isCopy = false, long copyId = 0)
 {
     try
     {
         var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
         report.update_user_id = userId;
         report.update_time    = timeNow;
         if (report.id == 0)
         {
             report.id             = _dal.GetNextIdCom();
             report.create_time    = timeNow;
             report.create_user_id = userId;
             report.submit_user_id = userId;
             report.submit_time    = report.create_time;
             _dal.Insert(report);
             OperLogBLL.OperLogAdd <sdk_expense_report>(report, report.id, userId, OPER_LOG_OBJ_CATE.SDK_EXPENSE_REPORT, "新增费用报表");
             // 代表是复制操作
             if (isCopy && copyId != 0)
             {
                 var seDal = new sdk_expense_dal();
                 // 复制时,将原有的费用复制,已经审批提交的只复制相关信息,审批状态不复制
                 var thisExpList = seDal.GetExpByReport(copyId);
                 if (thisExpList != null && thisExpList.Count > 0)
                 {
                     thisExpList.ForEach(_ => {
                         _.id  = seDal.GetNextIdCom();
                         _.oid = 0;
                         _.expense_report_id        = report.id;
                         _.create_time              = timeNow;
                         _.update_time              = timeNow;
                         _.create_user_id           = userId;
                         _.update_user_id           = userId;
                         _.approve_and_post_date    = null;
                         _.approve_and_post_user_id = null;
                         seDal.Insert(_);
                         OperLogBLL.OperLogAdd <sdk_expense>(_, _.id, userId, OPER_LOG_OBJ_CATE.SDK_EXPENSE, "新增费用");
                     });
                 }
             }
         }
         else
         {
             var oldReport = _dal.FindNoDeleteById(report.id);
             if (oldReport != null)
             {
                 _dal.Update(report);
                 OperLogBLL.OperLogUpdate <sdk_expense_report>(report, oldReport, report.id, userId, OPER_LOG_OBJ_CATE.SDK_EXPENSE_REPORT, "修改费用报表");
             }
         }
     }
     catch (Exception)
     {
         return(false);
     }
     return(true);
 }
Esempio n. 10
0
        /// <summary>
        /// 工时表提交
        /// </summary>
        /// <param name="startDate"></param>
        /// <param name="resourceId"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool SubmitWorkEntry(DateTime startDate, long resourceId, long userId)
        {
            var weList = GetWorkEntryListByStartDate(startDate, resourceId);
            //if (weList.Count == 0)
            //    return false;

            sdk_work_entry_report     report = new sdk_work_entry_report();
            sdk_work_entry_report_dal rptDal = new sdk_work_entry_report_dal();

            var find = rptDal.FindSignleBySql <sdk_work_entry_report>($"select * from sdk_work_entry_report where resource_id={resourceId} and start_date='{startDate}' and delete_time=0");

            if (find != null && find.status_id != (int)DicEnum.WORK_ENTRY_REPORT_STATUS.HAVE_IN_HAND && find.status_id != (int)DicEnum.WORK_ENTRY_REPORT_STATUS.REJECTED)
            {
                return(false);
            }

            if (find == null)
            {
                report.id             = rptDal.GetNextIdCom();
                report.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
                report.update_time    = report.create_time;
                report.create_user_id = userId;
                report.update_user_id = userId;
                report.resource_id    = resourceId;
                report.start_date     = startDate;
                report.end_date       = startDate.AddDays(6);
                report.status_id      = (int)DicEnum.WORK_ENTRY_REPORT_STATUS.WAITING_FOR_APPROVAL;
                report.submit_time    = report.create_time;
                report.submit_user_id = userId;
                rptDal.Insert(report);
                OperLogBLL.OperLogAdd <sdk_work_entry_report>(report, report.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SDK_WORK_RECORD, "工时表提交");

                foreach (var we in weList)
                {
                    var weOld = dal.FindById(we.id);
                    we.update_time          = Tools.Date.DateHelper.ToUniversalTimeStamp();
                    we.update_user_id       = userId;
                    we.work_entry_report_id = report.id;
                    dal.Update(we);
                    OperLogBLL.OperLogUpdate(OperLogBLL.CompareValue <sdk_work_entry>(weOld, we), we.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SDK_WORK_ENTRY, "工时表提交");
                }
            }
            else
            {
                sdk_work_entry_report reportOld = rptDal.FindById(find.id);
                find.status_id      = (int)DicEnum.WORK_ENTRY_REPORT_STATUS.WAITING_FOR_APPROVAL;
                find.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
                find.update_user_id = userId;
                find.submit_time    = find.update_time;
                find.submit_user_id = userId;
                rptDal.Update(find);
                OperLogBLL.OperLogUpdate(OperLogBLL.CompareValue <sdk_work_entry_report>(reportOld, find), find.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SDK_WORK_RECORD, "工时表提交");
            }

            return(true);
        }
Esempio n. 11
0
        /// <summary>
        /// 工时表审批
        /// </summary>
        /// <param name="ids">,号分割的多个工时表id</param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public int ApproveWorkEntryReport(string ids, long userId)
        {
            int appCnt  = 0;
            var rptDal  = new sdk_work_entry_report_dal();
            var logDal  = new tst_work_entry_report_log_dal();
            var reports = rptDal.FindListBySql($"select * from sdk_work_entry_report where id in({ids}) and status_id={(int)DicEnum.WORK_ENTRY_REPORT_STATUS.WAITING_FOR_APPROVAL} and delete_time=0");

            if (reports == null || reports.Count == 0)
            {
                return(appCnt);
            }

            var user = new UserResourceBLL().GetResourceById(userId);

            foreach (var report in reports)
            {
                // 判断用户是否在当前可以审批工时表
                int tier = GetWorkEntryReportCurrentApproveTier(report.id);
                if (tier == 3)
                {
                    continue;
                }
                var aprvResList = GetApproverList((long)report.resource_id);
                tier++;
                if (user.security_level_id == 1 || aprvResList.Exists(_ => _.tier == tier && _.approver_resource_id == userId)) // 用户是管理员或用户可以审批下一级
                {
                    tst_work_entry_report_log log = new tst_work_entry_report_log();
                    log.id = logDal.GetNextIdCom();
                    log.work_entry_report_id = report.id;
                    log.oper_user_id         = userId;
                    log.oper_type_id         = (int)DicEnum.WORK_ENTRY_REPORT_OPER_TYPE.APPROVAL;
                    log.oper_time            = Tools.Date.DateHelper.ToUniversalTimeStamp();
                    log.tier = tier;

                    logDal.Insert(log);
                    OperLogBLL.OperLogAdd <tst_work_entry_report_log>(log, log.id, userId, DicEnum.OPER_LOG_OBJ_CATE.WORK_ENTRY_REPORT_LOG, "工时表审批");

                    appCnt++;

                    if (aprvResList.Count == 0 || aprvResList.Max(_ => _.tier) == tier)    // 是最后一级审批人
                    {
                        var rptOld = rptDal.FindById(report.id);
                        report.status_id       = (int)DicEnum.WORK_ENTRY_REPORT_STATUS.PAYMENT_BEEN_APPROVED;
                        report.update_time     = Tools.Date.DateHelper.ToUniversalTimeStamp();
                        report.update_user_id  = userId;
                        report.approve_time    = report.update_time;
                        report.approve_user_id = userId;
                        rptDal.Update(report);
                        OperLogBLL.OperLogUpdate(OperLogBLL.CompareValue <sdk_work_entry_report>(rptOld, report), report.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SDK_WORK_RECORD, "工时表审批");
                    }
                }
            }

            return(appCnt);
        }
Esempio n. 12
0
        /// <summary>
        /// 新增工作组
        /// </summary>
        public bool AddGroup(sys_workgroup group, long userId)
        {
            sys_workgroup_dal swDal = new sys_workgroup_dal();

            group.id             = swDal.GetNextIdCom();
            group.create_time    = group.update_time = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
            group.create_user_id = group.update_user_id = userId;
            swDal.Insert(group);
            OperLogBLL.OperLogAdd <sys_workgroup>(group, group.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SYS_WORKGROUP, "");
            return(true);
        }
Esempio n. 13
0
 /// <summary>
 /// 新增工作流规则
 /// </summary>
 /// <param name="workflow"></param>
 /// <param name="userId"></param>
 /// <returns></returns>
 public bool AddWorkflow(sys_workflow workflow, long userId)
 {
     workflow.id             = dal.GetNextIdCom();
     workflow.create_user_id = userId;
     workflow.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
     workflow.update_time    = workflow.create_time;
     workflow.update_user_id = userId;
     dal.Insert(workflow);
     OperLogBLL.OperLogAdd <sys_workflow>(workflow, workflow.id, userId, DicEnum.OPER_LOG_OBJ_CATE.WORKFLOW_RULE, "新增工作流规则");
     return(true);
 }
Esempio n. 14
0
        /// <summary>
        /// 报价参数设置
        /// </summary>
        /// <param name="quoteRef"></param>
        /// <param name="emailQuoteContact">是否通知报价联系人</param>
        /// <param name="emailAccountResource">是否通知客户经理</param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool PreferencesQuote(crm_account_reference quoteRef, bool emailQuoteContact, bool emailAccountResource, long userId)
        {
            crm_account_reference_dal refDal = new crm_account_reference_dal();
            var oldPref = refDal.GetAccountQuoteRef(quoteRef.account_id);
            crm_account_reference newPref;

            if (oldPref == null)
            {
                newPref = new crm_account_reference();
            }
            else
            {
                newPref = refDal.GetAccountQuoteRef(quoteRef.account_id);
            }

            newPref.account_id    = quoteRef.account_id;
            newPref.quote_tmpl_id = quoteRef.quote_tmpl_id;
            newPref.quote_email_message_tmpl_id   = quoteRef.quote_email_message_tmpl_id;
            newPref.invoice_tmpl_id               = null;
            newPref.invoice_email_message_tmpl_id = null;
            newPref.email_to_contacts             = quoteRef.email_to_contacts;
            newPref.email_to_others               = quoteRef.email_to_others;
            newPref.email_bcc_resources           = quoteRef.email_bcc_resources;
            if (emailAccountResource)
            {
                var account = new CompanyBLL().GetCompany(newPref.account_id);
                if (account.resource_id != null)
                {
                    newPref.email_bcc_account_manager = account.resource_id.ToString();
                }
            }
            newPref.email_notes = quoteRef.email_notes;

            newPref.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
            newPref.update_user_id = userId;
            if (oldPref == null)
            {
                newPref.create_time    = newPref.update_time;
                newPref.create_user_id = userId;
                newPref.id             = refDal.GetNextIdCom();

                refDal.Insert(newPref);

                OperLogBLL.OperLogAdd <crm_account_reference>(newPref, newPref.id, userId, OPER_LOG_OBJ_CATE.REFERENCE, "添加客户报价参数");
            }
            else
            {
                refDal.Update(newPref);

                OperLogBLL.OperLogUpdate <crm_account_reference>(oldPref, newPref, newPref.id, userId, OPER_LOG_OBJ_CATE.REFERENCE, "修改客户报价参数");
            }

            return(true);
        }
Esempio n. 15
0
        /// <summary>
        /// 编辑库存产品
        /// </summary>
        /// <param name="pdt"></param>
        /// <param name="sn"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool EditIvtProduct(ivt_warehouse_product pdt, string sn, long userId)
        {
            ivt_warehouse_product product    = dal.FindById(pdt.id);
            ivt_warehouse_product productOld = dal.FindById(pdt.id);

            if (product == null)
            {
                return(false);
            }
            product.reference_number = pdt.reference_number;
            product.bin = pdt.bin;
            product.quantity_minimum = pdt.quantity_minimum;
            product.quantity_maximum = pdt.quantity_maximum;
            product.quantity         = pdt.quantity;
            product.update_time      = Tools.Date.DateHelper.ToUniversalTimeStamp();
            product.update_user_id   = userId;

            string desc = OperLogBLL.CompareValue <ivt_warehouse_product>(productOld, product);

            if (!string.IsNullOrEmpty(desc))
            {
                dal.Update(product);
                OperLogBLL.OperLogUpdate(desc, product.id, userId, DicEnum.OPER_LOG_OBJ_CATE.INVENTORY_ITEM, "修改库存产品");
            }

            if (product.quantity != productOld.quantity)      // 修改库存数量记录库存转移
            {
                var transferDal = new ivt_transfer_dal();
                var trsf        = new ivt_transfer();
                trsf.id                = dal.GetNextIdCom();
                trsf.create_time       = Tools.Date.DateHelper.ToUniversalTimeStamp();
                trsf.create_user_id    = userId;
                trsf.update_time       = trsf.create_time;
                trsf.update_user_id    = userId;
                trsf.quantity          = product.quantity - productOld.quantity;
                trsf.type_id           = (int)DicEnum.INVENTORY_TRANSFER_TYPE.MANUAL;
                trsf.product_id        = product.product_id;
                trsf.from_warehouse_id = (long)product.warehouse_id;
                trsf.notes             = "";
                transferDal.Insert(trsf);
                OperLogBLL.OperLogAdd <ivt_transfer>(trsf, trsf.id, userId, DicEnum.OPER_LOG_OBJ_CATE.INVENTORY_ITEM_TRANSFER, "新增库存转移");
            }

            //OperLogBLL.OperLogUpdate<ivt_warehouse_product>(product, productOld, product.id, userId, DicEnum.OPER_LOG_OBJ_CATE.INVENTORY_ITEM, "修改库存产品");

            string sql = $"update ivt_warehouse_product_sn set delete_user_id={userId},delete_time={Tools.Date.DateHelper.ToUniversalTimeStamp()} where warehouse_product_id={product.id}";

            dal.ExecuteSQL(sql);

            SaveProductSn(sn, product.id, userId);

            return(true);
        }
Esempio n. 16
0
        /// <summary>
        /// 新增知识库
        /// </summary>
        public void AddKnow(sdk_kb_article thisArt, long userId)
        {
            var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);

            thisArt.id             = _dal.GetNextIdCom();
            thisArt.create_time    = timeNow;
            thisArt.update_time    = timeNow;
            thisArt.create_user_id = userId;
            thisArt.update_user_id = userId;
            _dal.Insert(thisArt);
            OperLogBLL.OperLogAdd <sdk_kb_article>(thisArt, thisArt.id, userId, OPER_LOG_OBJ_CATE.SDK_KONWLEDGE, "新增知识库");
        }
Esempio n. 17
0
 /// <summary>
 /// 新增变更委员会
 /// </summary>
 public bool AddBoard(d_change_board board, string resIds, long userId)
 {
     if (!CheckBoardName(board.name))
     {
         return(false);
     }
     board.id             = _dal.GetNextIdCom();
     board.create_time    = board.update_time = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     board.create_user_id = board.update_user_id = userId;
     _dal.Insert(board);
     OperLogBLL.OperLogAdd <d_change_board>(board, board.id, userId, DicEnum.OPER_LOG_OBJ_CATE.CHANGE_BOARD, "");
     BoardResourceManage(board.id, resIds, userId);
     return(true);
 }
Esempio n. 18
0
        /// <summary>
        /// 新增产品
        /// </summary>
        /// <param name="pdt"></param>
        /// <param name="sn">序列化产品的序列号</param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public bool AddIvtProduct(ivt_warehouse_product pdt, string sn, long userId)
        {
            pdt.id             = dal.GetNextIdCom();
            pdt.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp();
            pdt.create_user_id = userId;
            pdt.update_time    = pdt.create_time;
            pdt.update_user_id = userId;

            dal.Insert(pdt);
            OperLogBLL.OperLogAdd <ivt_warehouse_product>(pdt, pdt.id, userId, DTO.DicEnum.OPER_LOG_OBJ_CATE.INVENTORY_ITEM, "新增库存产品");

            SaveProductSn(sn, pdt.id, userId);

            return(true);
        }
Esempio n. 19
0
 /// <summary>
 /// 新增模板
 /// </summary>
 public bool AddFormTmpl(sys_form_tmpl tmpl, long userId)
 {
     if (!CheckTempCode(tmpl.speed_code))
     {
         return(false);
     }
     tmpl.id             = _dal.GetNextIdCom();
     tmpl.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmpl.create_user_id = userId;
     tmpl.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmpl.update_user_id = userId;
     _dal.Insert(tmpl);
     OperLogBLL.OperLogAdd <sys_form_tmpl>(tmpl, tmpl.id, userId, OPER_LOG_OBJ_CATE.FROM, "");
     return(true);
 }
Esempio n. 20
0
 /// <summary>
 /// 新增商机模板
 /// </summary>
 public bool AddOpportunityTmpl(sys_form_tmpl tmpl, sys_form_tmpl_opportunity tmplOppo, long userId)
 {
     if (!AddFormTmpl(tmpl, userId))
     {
         return(false);
     }
     tmplOppo.id             = _dal.GetNextIdCom();
     tmplOppo.form_tmpl_id   = tmpl.id;
     tmplOppo.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplOppo.create_user_id = userId;
     tmplOppo.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplOppo.update_user_id = userId;
     new sys_form_tmpl_opportunity_dal().Insert(tmplOppo);
     OperLogBLL.OperLogAdd <sys_form_tmpl_opportunity>(tmplOppo, tmpl.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_OPPORTUNITY, "");
     return(true);
 }
Esempio n. 21
0
 public bool AddQuoteTmpl(sys_form_tmpl tmpl, sys_form_tmpl_quote tmplQuote, long userId)
 {
     if (!AddFormTmpl(tmpl, userId))
     {
         return(false);
     }
     tmplQuote.id             = _dal.GetNextIdCom();
     tmplQuote.form_tmpl_id   = tmpl.id;
     tmplQuote.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplQuote.create_user_id = userId;
     tmplQuote.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplQuote.update_user_id = userId;
     new sys_form_tmpl_quote_dal().Insert(tmplQuote);
     OperLogBLL.OperLogAdd <sys_form_tmpl_quote>(tmplQuote, tmplQuote.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_QUOTE, "");
     return(true);
 }
Esempio n. 22
0
 public bool AddWorkEntryTmpl(sys_form_tmpl tmpl, sys_form_tmpl_work_entry tmplEntry, long userId)
 {
     if (!AddFormTmpl(tmpl, userId))
     {
         return(false);
     }
     tmplEntry.id             = _dal.GetNextIdCom();
     tmplEntry.form_tmpl_id   = tmpl.id;
     tmplEntry.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplEntry.create_user_id = userId;
     tmplEntry.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplEntry.update_user_id = userId;
     new sys_form_tmpl_work_entry_dal().Insert(tmplEntry);
     OperLogBLL.OperLogAdd <sys_form_tmpl_work_entry>(tmplEntry, tmplEntry.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_WORK_ENTRY, "");
     return(true);
 }
Esempio n. 23
0
 public bool AddServiceCallTmpl(sys_form_tmpl tmpl, sys_form_tmpl_service_call tmplServiceCall, long userId)
 {
     if (!AddFormTmpl(tmpl, userId))
     {
         return(false);
     }
     tmplServiceCall.id             = _dal.GetNextIdCom();
     tmplServiceCall.form_tmpl_id   = tmpl.id;
     tmplServiceCall.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplServiceCall.create_user_id = userId;
     tmplServiceCall.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
     tmplServiceCall.update_user_id = userId;
     new sys_form_tmpl_service_call_dal().Insert(tmplServiceCall);
     OperLogBLL.OperLogAdd <sys_form_tmpl_service_call>(tmplServiceCall, tmplServiceCall.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_SERVICE_CALL, "");
     return(true);
 }
Esempio n. 24
0
        /// <summary>
        /// 新增队列员工
        /// </summary>
        public bool AddQueueResource(sys_resource_department resDep, long userId, ref string faileReason)
        {
            sys_resource_department_dal srdDal = new sys_resource_department_dal();

            if (!CheckResourceRole(resDep))
            {
                faileReason = "已存在该员工角色"; return(false);
            }
            if (resDep.is_lead == 1) // && resDep.is_active==1
            {
                ClearLeadResource(resDep.department_id, userId);
            }
            resDep.id = srdDal.GetNextIdCom();
            srdDal.Insert(resDep);
            OperLogBLL.OperLogAdd <sys_resource_department>(resDep, resDep.id, userId, OPER_LOG_OBJ_CATE.SYS_RESOURCE_DEPARTMENT, "");
            return(true);
        }
Esempio n. 25
0
        /// <summary>
        /// 新增约会
        /// </summary>
        public bool AddAppointment(sdk_appointment dispatch, long userId)
        {
            if (dispatch == null)
            {
                return(false);
            }
            dispatch.id = saDal.GetNextIdCom();
            var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);

            dispatch.create_time    = timeNow;
            dispatch.update_time    = timeNow;
            dispatch.create_user_id = userId;
            dispatch.update_user_id = userId;
            saDal.Insert(dispatch);
            OperLogBLL.OperLogAdd <sdk_appointment>(dispatch, dispatch.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SERVICE_APPOINTMENT, "新增约会");
            return(true);
        }
Esempio n. 26
0
        public bool AddCode(d_cost_code code, long userId)
        {
            // code.id
            if (!CheckCodeName(code.name, code.cate_id))
            {
                return(false);
            }
            code.id             = _dal.GetNextIdCom();
            code.create_time    = code.update_time = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
            code.create_user_id = code.update_user_id = userId;

            _dal.Insert(code);
            OperLogBLL.OperLogAdd <d_cost_code>(code, code.id, userId, OPER_LOG_OBJ_CATE.D_COST_CODE, "");
            if (code.cate_id == (int)DicEnum.COST_CODE_CATE.INTERNAL_ALLOCATION_CODE)
            {
                AddInterCodeTask(code, userId);
            }
            return(true);
        }
Esempio n. 27
0
        /// <summary>
        /// 新增约会
        /// </summary>
        public bool AddDispatchView(sdk_dispatcher_view disView, long userId)
        {
            if (disView == null)
            {
                return(false);
            }
            var sdDal = new sdk_dispatcher_view_dal();

            disView.id = saDal.GetNextIdCom();
            var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);

            disView.create_time    = timeNow;
            disView.update_time    = timeNow;
            disView.create_user_id = userId;
            disView.update_user_id = userId;
            sdDal.Insert(disView);
            OperLogBLL.OperLogAdd <sdk_dispatcher_view>(disView, disView.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SERVICE_DISPATCHER_VIEW, "新增调度工作室视图");
            return(true);
        }
Esempio n. 28
0
        /// <summary>
        /// 快速新增
        /// </summary>
        public bool AddQuickCall(ServiceCallDto param, long userId)
        {
            // 新增工单
            var tBll = new TicketBLL();

            param.thisTicket.type_id   = (int)DicEnum.TASK_TYPE.SERVICE_DESK_TICKET;
            param.thisTicket.status_id = (int)DicEnum.TICKET_STATUS.NEW;
            tBll.InsertTicket(param.thisTicket, userId);
            // 新增自定义
            var udf_list = new UserDefinedFieldsBLL().GetUdf(DicEnum.UDF_CATE.TICKETS);

            new UserDefinedFieldsBLL().SaveUdfValue(DicEnum.UDF_CATE.TICKETS, userId,
                                                    param.thisTicket.id, udf_list, param.udfList, DicEnum.OPER_LOG_OBJ_CATE.PROJECT_TASK_INFORMATION);
            // 新增其他负责人
            if (!string.IsNullOrEmpty(param.resIds))
            {
                tBll.TicketResManage(param.thisTicket.id, param.resIds, userId);
            }
            // 新增服务预定
            var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);

            tBll.AddCallOnly(param.call, userId);
            var ssctDal = new sdk_service_call_task_dal();
            var taskRes = new sdk_service_call_task()
            {
                id              = ssctDal.GetNextIdCom(),
                create_time     = timeNow,
                create_user_id  = userId,
                service_call_id = param.call.id,
                task_id         = param.thisTicket.id,
                update_time     = timeNow,
                update_user_id  = userId,
            };

            ssctDal.Insert(taskRes);
            OperLogBLL.OperLogAdd <sdk_service_call_task>(taskRes, taskRes.id, userId, DicEnum.OPER_LOG_OBJ_CATE.SERVICE_CALL_TICKET, "新增服务预定关联工单");
            if (!string.IsNullOrEmpty(param.resIds))
            {
                tBll.CallTicketResManage(param.call.id, param.resIds, userId);
            }
            return(true);
        }
Esempio n. 29
0
        public bool AddRecTicketTmpl(sys_form_tmpl tmpl, sys_form_tmpl_recurring_ticket tmplRecTicket, List <UserDefinedFieldValue> udfValue, long userId)
        {
            if (!AddFormTmpl(tmpl, userId))
            {
                return(false);
            }
            tmplRecTicket.id             = _dal.GetNextIdCom();
            tmplRecTicket.form_tmpl_id   = tmpl.id;
            tmplRecTicket.create_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
            tmplRecTicket.create_user_id = userId;
            tmplRecTicket.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
            tmplRecTicket.update_user_id = userId;
            new sys_form_tmpl_recurring_ticket_dal().Insert(tmplRecTicket);
            OperLogBLL.OperLogAdd <sys_form_tmpl_recurring_ticket>(tmplRecTicket, tmplRecTicket.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_RECURRING_TICKET, "");

            var udf_ticket_list = new UserDefinedFieldsBLL().GetUdf(DicEnum.UDF_CATE.TICKETS);                                                                                                   // 获取到所有的自定义的字段信息

            new UserDefinedFieldsBLL().SaveUdfValue(DicEnum.UDF_CATE.FORM_RECTICKET, userId, tmplRecTicket.id, udf_ticket_list, udfValue, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_RECURRING_TICKET_EXT); // 保存自定义字段,保存成功,插入日志
            return(true);
        }
Esempio n. 30
0
 /// <summary>
 /// 新增服务包相关
 /// </summary>
 public bool AddServiceBundle(ivt_service_bundle SerBun, long userId, string serIds)
 {
     try
     {
         var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
         var isbDal  = new ivt_service_bundle_dal();
         SerBun.id             = isbDal.GetNextIdCom();
         SerBun.create_time    = timeNow;
         SerBun.update_time    = timeNow;
         SerBun.create_user_id = userId;
         SerBun.update_user_id = userId;
         isbDal.Insert(SerBun);
         OperLogBLL.OperLogAdd <ivt_service_bundle>(SerBun, SerBun.id, userId, DTO.DicEnum.OPER_LOG_OBJ_CATE.IVT_SERVICE_BUNDLE, "新增服务包");
         ServiceBundleManage(SerBun.id, serIds, userId);
     }
     catch (Exception msg)
     {
         return(false);
     }
     return(true);
 }