| | |
| | | /*********************************************************************** |
| | | * Project: CoreCms |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: hhtp://chuanyin.com |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 202403/02 |
| | |
| | | ***********************************************************************/ |
| | | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Linq; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Configuration; |
| | | using CoreCms.Net.Filter; |
| | | using CoreCms.Net.IRepository.UnitOfWork; |
| | | using CoreCms.Net.IServices; |
| | | using CoreCms.Net.Loging; |
| | | using CoreCms.Net.Model.Entities; |
| | |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Hosting; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using Microsoft.CodeAnalysis.Operations; |
| | | using SqlSugar; |
| | | using ZstdSharp.Unsafe; |
| | | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | |
| | | private readonly ICoreCmsDistributionGradeServices _distributionGradeServices; |
| | | private readonly ICoreCmsUserServices _userServices; |
| | | private readonly IWebHostEnvironment _webHostEnvironment; |
| | | private readonly ICoreCmsAreaServices _areaServices; |
| | | private readonly ICoreCmsSettingServices _coreCmsSettingServices; |
| | | private readonly IUnitOfWork _unitOfWork; |
| | | private readonly ICoreCmsStoreServices _coreCmsStoreServices; |
| | | private readonly ICoreCmsClerkServices _coreCmsClerkServices; |
| | | |
| | | |
| | | /// <summary> |
| | | /// 构造函数 |
| | | /// </summary> |
| | | public CoreCmsDistributionController(IWebHostEnvironment webHostEnvironment |
| | | , ICoreCmsDistributionServices coreCmsDistributionServices, ICoreCmsUserGradeServices userGradeServices, ICoreCmsDistributionGradeServices distributionGradeServices, ICoreCmsUserServices userServices) |
| | | , ICoreCmsDistributionServices coreCmsDistributionServices, |
| | | ICoreCmsUserGradeServices userGradeServices, |
| | | ICoreCmsDistributionGradeServices distributionGradeServices, |
| | | ICoreCmsUserServices userServices, |
| | | ICoreCmsAreaServices areaServices, |
| | | ICoreCmsSettingServices coreCmsSettingServices, |
| | | IUnitOfWork unitOfWork, |
| | | ICoreCmsStoreServices coreCmsStoreServices, |
| | | ICoreCmsClerkServices coreCmsClerkServices) |
| | | { |
| | | _webHostEnvironment = webHostEnvironment; |
| | | _coreCmsDistributionServices = coreCmsDistributionServices; |
| | | _userGradeServices = userGradeServices; |
| | | _distributionGradeServices = distributionGradeServices; |
| | | _userServices = userServices; |
| | | _areaServices = areaServices; |
| | | _coreCmsSettingServices = coreCmsSettingServices; |
| | | _unitOfWork = unitOfWork; |
| | | _coreCmsStoreServices = coreCmsStoreServices; |
| | | _coreCmsClerkServices= coreCmsClerkServices; |
| | | |
| | | } |
| | | |
| | | #region 获取列表============================================================ |
| | |
| | | where = where.And(p => p.isDelete == false); |
| | | //获取数据 |
| | | var list = await _coreCmsDistributionServices.QueryPageAsync(where, orderEx, orderBy, pageCurrent, pageSize); |
| | | |
| | | //返回数据 |
| | | jm.data = list; |
| | | jm.code = 0; |
| | |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | //事物处理过程开始 |
| | | oldModel.name = entity.name; |
| | | oldModel.gradeId = entity.gradeId; |
| | | oldModel.mobile = entity.mobile; |
| | | oldModel.weixin = entity.weixin; |
| | | oldModel.qq = entity.qq; |
| | | oldModel.verifyStatus = entity.verifyStatus; |
| | | oldModel.updateTime = DateTime.Now; |
| | | if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) oldModel.verifyTime = DateTime.Now; |
| | | //oldModel.weixin = entity.weixin; |
| | | //oldModel.qq = entity.qq; |
| | | |
| | | //事物处理过程结束 |
| | | var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | try |
| | | { |
| | | _unitOfWork.BeginTran(); |
| | | if (oldModel.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | { |
| | | |
| | | return jm; |
| | | //老模型未通过审核,新模型未通过审核,那么为审核通过过程 |
| | | var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries(); |
| | | var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey); |
| | | var olduser = await _userServices.QueryByIdAsync(oldModel.userId); |
| | | var group = await _userGradeServices.GetUserGradeByValueKey(kc); |
| | | if (group != null) |
| | | { |
| | | |
| | | //关联经销商用户等级 |
| | | if (olduser != null) |
| | | { |
| | | olduser.grade = group.id; |
| | | olduser.updataTime = DateTime.Now; |
| | | await _userServices.UpdateAsync(olduser); |
| | | |
| | | } |
| | | } |
| | | |
| | | //如果是通过审核 |
| | | oldModel.verifyTime = DateTime.Now; |
| | | //处理店铺 |
| | | if(entity.profession=="文具店") |
| | | { |
| | | |
| | | //新建店铺名称 |
| | | |
| | | var store = await _coreCmsStoreServices.QueryByClauseAsync(x => x.userID == oldModel.userId); |
| | | if(store!=null) |
| | | { |
| | | //存在店铺 |
| | | store.coordinate= entity.storeCoordinate; |
| | | store.storeName = entity.storeName; |
| | | //用logo代替门头照片 |
| | | store.logoImage = entity.storeLogo; |
| | | store.en = true; |
| | | store.updateTime = DateTime.Now; |
| | | await _coreCmsStoreServices.UpdateAsync(store); |
| | | |
| | | |
| | | } |
| | | else |
| | | { |
| | | var areaCode = oldModel.areaCode.Split(',').OrderByDescending(x=>x).FirstOrDefault(); |
| | | var db = _unitOfWork.GetDbClient(); |
| | | string[] lat = []; |
| | | if (!string.IsNullOrEmpty(oldModel.storeCoordinate)) |
| | | lat = oldModel.storeCoordinate.Split(","); |
| | | //新建地铺 |
| | | store = new CoreCmsStore |
| | | { |
| | | userID = oldModel.userId, |
| | | address = oldModel.address, |
| | | areaId = areaCode.ToInt32OrDefault(510000), |
| | | storeName = oldModel.storeName, |
| | | coordinate = oldModel.storeCoordinate, |
| | | createTime = DateTime.Now, |
| | | mobile = oldModel.mobile, |
| | | linkMan = olduser.userName, |
| | | |
| | | |
| | | |
| | | }; |
| | | if(lat.Length==2) |
| | | { |
| | | store.latitude= lat[0]; |
| | | store.longitude= lat[1]; |
| | | } |
| | | var id= await _unitOfWork.GetDbClient().Insertable(store).ExecuteReturnIdentityAsync(); |
| | | |
| | | //将自己设置为店员 |
| | | CoreCmsClerk clerk = new CoreCmsClerk() |
| | | { |
| | | createTime = DateTime.Now, |
| | | storeId = id, |
| | | userId = entity.userId, |
| | | |
| | | }; |
| | | await _coreCmsClerkServices.InsertAsync(clerk); |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | else |
| | | if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | { |
| | | //如果是取消审核 |
| | | |
| | | var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries(); |
| | | var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey); |
| | | var group = await _userGradeServices.GetUserGradeByValueKey(kc); |
| | | var defgroup = await _userGradeServices.GetDefaultUserGrade(); |
| | | if (defgroup != null) |
| | | { |
| | | var olduser = await _userServices.QueryByIdAsync(oldModel.userId); |
| | | if (olduser != null) |
| | | {//处理用户等级 |
| | | if (olduser.grade == group.id) |
| | | { |
| | | if (defgroup != null) |
| | | { |
| | | olduser.grade = defgroup.id; |
| | | } |
| | | else |
| | | { |
| | | |
| | | olduser.grade = 0; |
| | | } |
| | | |
| | | olduser.updataTime = DateTime.Now; |
| | | await _userServices.UpdateAsync(olduser); |
| | | |
| | | } |
| | | } |
| | | var store = await _coreCmsStoreServices.QueryByClauseAsync(x => x.userID == oldModel.userId); |
| | | //处理店铺 取消已有店铺的使能 |
| | | if(store != null ) |
| | | if(store.en== true) |
| | | { |
| | | store.en = false; |
| | | store.updateTime= DateTime.Now; |
| | | |
| | | await _coreCmsStoreServices.UpdateAsync(store); |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | oldModel.verifyStatus = entity.verifyStatus; |
| | | oldModel.updateTime = DateTime.Now; |
| | | //if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | //{ |
| | | // oldModel.verifyTime = DateTime.Now; |
| | | //} |
| | | |
| | | //事物处理过程结束 |
| | | var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel); |
| | | |
| | | _unitOfWork.CommitTran(); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | |
| | | return jm; |
| | | } |
| | | catch (Exception ) |
| | | { |
| | | _unitOfWork.RollbackTran(); |
| | | jm.code = 1; |
| | | jm.msg = GlobalConstVars.EditFailure; |
| | | |
| | | return jm; |
| | | |
| | | } |
| | | //if(oldModel.verifyStatus!= (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes&& entity.verifyStatus== (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | //{ |
| | | // var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries(); |
| | | // var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey); |
| | | // var group = await _userGradeServices.GetUserGradeByValueKey(kc); |
| | | |
| | | // //如果是通过审核 |
| | | // oldModel.verifyTime = DateTime.Now; |
| | | //} |
| | | //else |
| | | // if(oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | //{ |
| | | // //如果是取消审核 |
| | | |
| | | //} |
| | | //oldModel.verifyStatus = entity.verifyStatus; |
| | | //oldModel.updateTime = DateTime.Now; |
| | | ////if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) |
| | | ////{ |
| | | //// oldModel.verifyTime = DateTime.Now; |
| | | ////} |
| | | |
| | | ////事物处理过程结束 |
| | | //var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel); |
| | | //jm.code = bl ? 0 : 1; |
| | | //jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | |
| | | //return jm; |
| | | } |
| | | |
| | | #endregion |