diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java index 4bcc475..9a0a324 100644 --- a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java @@ -11,18 +11,13 @@ import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.crm.system.domain.DesigneeWrapperClass; import com.ruoyi.crm.system.domain.ServiceTicket; import com.ruoyi.crm.system.service.IServiceTicketService; -import com.ruoyi.system.service.ISysDeptService; -import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.HashSet; import java.util.List; -import java.util.stream.Collectors; /** * 服务工单Controller @@ -36,10 +31,6 @@ public class ServiceTicketController extends BaseController { @Autowired private IServiceTicketService serviceTicketService; - @Autowired - private ISysUserService userService; - @Autowired - private ISysDeptService deptService; /** * 查询服务工单列表 @@ -114,19 +105,7 @@ public class ServiceTicketController extends BaseController */ @GetMapping("/designatedPerson") public AjaxResult designatedPerson(SysUser user){ - ArrayList designeeWrapperClassArrayList = new ArrayList<>(); - List sysUsers = userService.selectUserList(user); - for (SysUser sysUser : sysUsers) { - DesigneeWrapperClass designeeWrapperClass = new DesigneeWrapperClass(); - if (sysUser.getDept() != null){ - SysDept dept = sysUser.getDept(); - designeeWrapperClass.setLabel(dept.getDeptName()); - designeeWrapperClassArrayList.add(designeeWrapperClass); - } - } - designeeWrapperClassArrayList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(HashSet::new), ArrayList::new)); - System.out.println(designeeWrapperClassArrayList.toString()); - return AjaxResult.success(designeeWrapperClassArrayList); + return AjaxResult.success(serviceTicketService.designatedPersonService(user)); } } diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java index a048efc..03e09cd 100644 --- a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java @@ -77,7 +77,7 @@ public class ServiceTicket extends BaseEntity /** 售后技术人员 */ @Excel(name = "售后技术人员") - private Integer afterSalesTechnician; + private String afterSalesTechnician; /** 服务地址(省/自治区/直辖市) */ @Excel(name = "服务地址(省/自治区/直辖市)") @@ -126,7 +126,7 @@ public class ServiceTicket extends BaseEntity private Integer customerSatisfaction; /** 满意度数值 */ - @Excel(name = "满意度数值") +// @Excel(name = "满意度数值") private Long satisfactionValue; /** 客户意见与诉求 */ @@ -280,12 +280,12 @@ public class ServiceTicket extends BaseEntity { return demandServiceDay; } - public void setAfterSalesTechnician(Integer afterSalesTechnician) + public void setAfterSalesTechnician(String afterSalesTechnician) { this.afterSalesTechnician = afterSalesTechnician; } - public Integer getAfterSalesTechnician() + public String getAfterSalesTechnician() { return afterSalesTechnician; } diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java index afcdc85..0285275 100644 --- a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java @@ -1,8 +1,11 @@ package com.ruoyi.crm.system.service; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.crm.system.domain.DesigneeWrapperClass; import com.ruoyi.crm.system.domain.ServiceTicket; +import java.util.ArrayList; import java.util.List; /** @@ -60,4 +63,12 @@ public interface IServiceTicketService * @return 结果 */ public int deleteServiceTicketById(Long id); + + + /** + * 指定员工树形数据 + * @param user + * @return ArrayList + */ + public ArrayList designatedPersonService(SysUser user); } diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java index 5f54b65..8fcb26d 100644 --- a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java @@ -1,12 +1,20 @@ package com.ruoyi.crm.system.service.impl; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysDept; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.crm.domain.CrmCustomer; +import com.ruoyi.crm.service.ICrmCustomerService; +import com.ruoyi.crm.system.domain.DesigneeWrapperClass; import com.ruoyi.crm.system.domain.ServiceTicket; import com.ruoyi.crm.system.mapper.ServiceTicketMapper; import com.ruoyi.crm.system.service.IServiceTicketService; +import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -20,6 +28,10 @@ public class ServiceTicketServiceImpl implements IServiceTicketService { @Autowired private ServiceTicketMapper serviceTicketMapper; + @Autowired + private ISysUserService userService; + @Autowired + private ICrmCustomerService crmCustomerService; /** * 查询服务工单 @@ -54,6 +66,8 @@ public class ServiceTicketServiceImpl implements IServiceTicketService @Override public int insertServiceTicket(ServiceTicket serviceTicket) { + CrmCustomer crmCustomer = crmCustomerService.selectCrmCustomerById(serviceTicket.getSatisfactionValue()); + serviceTicket.setCustomerName(crmCustomer.getName()); serviceTicket.setCreateTime(DateUtils.getNowDate()); return serviceTicketMapper.insertServiceTicket(serviceTicket); } @@ -67,6 +81,8 @@ public class ServiceTicketServiceImpl implements IServiceTicketService @Override public int updateServiceTicket(ServiceTicket serviceTicket) { + CrmCustomer crmCustomer = crmCustomerService.selectCrmCustomerById(serviceTicket.getSatisfactionValue()); + serviceTicket.setCustomerName(crmCustomer.getName()); serviceTicket.setUpdateTime(DateUtils.getNowDate()); return serviceTicketMapper.updateServiceTicket(serviceTicket); } @@ -94,4 +110,57 @@ public class ServiceTicketServiceImpl implements IServiceTicketService { return serviceTicketMapper.deleteServiceTicketById(id); } + + /** + * 指定员工树形数据 + * @param user + * @return ArrayList + */ + @Override + public ArrayList designatedPersonService(SysUser user){ + //最终返回数据的集合 + ArrayList designeeWrapperClassArrayList = new ArrayList<>(); + //保存部门名的集合 + ArrayList stringArrayList = new ArrayList<>(); + List sysUsers = userService.selectUserList(user); + //循环系统用户拿到所有部门 + for (SysUser sysUser : sysUsers) { + if (sysUser.getDept() != null && sysUser.getDept().getDeptName() != null){ + SysDept dept = sysUser.getDept(); + stringArrayList.add(dept.getDeptName()); + } + } + //部门去重 + ArrayList duplicateRemovalList = new ArrayList<>(); + for (String s : stringArrayList) { + if (!duplicateRemovalList.contains(s)) + { + duplicateRemovalList.add(s); + } + } + for (String s : duplicateRemovalList) { + DesigneeWrapperClass designeeWrapperClass = new DesigneeWrapperClass(); + designeeWrapperClass.setLabel(s); + designeeWrapperClassArrayList.add(designeeWrapperClass); + } + //根据去重后的所有部门循环所有用户对象把对应的用户放入对应的部门中 + for (DesigneeWrapperClass designeeWrapperClass : designeeWrapperClassArrayList) { + for (SysUser sysUser : sysUsers) { + if (sysUser.getDept() != null){ + SysDept dept = sysUser.getDept(); + if (designeeWrapperClass.getLabel().equals(dept.getDeptName())){ + ArrayList children = designeeWrapperClass.getChildren(); + if (children == null) { + children = new ArrayList<>(); + designeeWrapperClass.setChildren(children); + } + DesigneeWrapperClass wrapperClass = new DesigneeWrapperClass(); + wrapperClass.setLabel(sysUser.getUserName()); + children.add(wrapperClass); + } + } + } + } + return designeeWrapperClassArrayList; + } } diff --git a/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml b/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml index e93b8ae..601cc13 100644 --- a/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml +++ b/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml @@ -64,7 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and service_star_time = #{serviceStarTime} and service_end_time = #{serviceEndTime} and demand_service_day = #{demandServiceDay} - and after_sales_technician = #{afterSalesTechnician} + and after_sales_technician = #{afterSalesTechnician} and service_address = #{serviceAddress} and service_address_city = #{serviceAddressCity} and service_address_area = #{serviceAddressArea} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/conreoller/DynamicDataController.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/conreoller/DynamicDataController.java deleted file mode 100644 index 7e7ef50..0000000 --- a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/conreoller/DynamicDataController.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.ruoyi.mongodb.conreoller; - -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.mongodb.domain.DynamicData; -import com.ruoyi.mongodb.domain.DynamicForm; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.http.HttpRequest; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.*; - -/** - * 智能表单模块 - */ - -@RestController -@RequestMapping("/intelligentForm") -public class DynamicDataController extends BaseController { - @Autowired - private MongoTemplate mongoTemplate; - - //保存数据 - @PostMapping("/saveDynamicData") - public AjaxResult saveDynamicData(@RequestBody Map requestData, HttpServletRequest httpServletRequest) { - DynamicData dynamicData = new DynamicData(); -// System.out.println(requestData.toString()); - String title = (String)requestData.get("title"); - String pageView = (String)requestData.get("pageView"); - String collectionQuantity = (String)requestData.get("collectionQuantity"); - dynamicData.setTitle(title); - requestData.remove("title"); - dynamicData.setPageView(pageView); - requestData.remove("pageView"); - dynamicData.setCollectionQuantity(collectionQuantity); - requestData.remove("collectionQuantity"); - ArrayList inputarr = (ArrayList)requestData.get("inputarr"); -// System.out.println(inputarr.toString()); - for (String s : inputarr) { - requestData.put(s,null); - } - requestData.remove("inputarr"); -// System.out.println(requestData.toString()); - dynamicData.setCreatePeople(getUsername()); - LocalDate currentDate = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String formattedDate = currentDate.format(formatter); - dynamicData.setCreateTime(formattedDate); - dynamicData.setData(requestData); - dynamicData.setTenantName(httpServletRequest.getHeader("Tenant")); - mongoTemplate.save(dynamicData); - return AjaxResult.success("保存成功"); - } - - //查询全部数据 - @GetMapping("/selectDynamicData") - public AjaxResult selectDynamicData(HttpServletRequest httpServletRequest) { - Query query = new Query(); - query.addCriteria(Criteria.where("tenantName").is(httpServletRequest.getHeader("Tenant"))); - List dynamicData = mongoTemplate.find(query, DynamicData.class); - for (DynamicData dynamicDatum : dynamicData) { - Query queryByFor = new Query(); - queryByFor.addCriteria(Criteria.where("dynamicDataId").is(dynamicDatum.getId())); - long count = mongoTemplate.count(queryByFor, DynamicForm.class); - dynamicDatum.setCollectionQuantity(count+""); - } - System.out.println(dynamicData.toString()); - return AjaxResult.success(dynamicData); - } - //根据id查询数据 - @GetMapping("/selectDynamicDataById") - public AjaxResult selectDynamicDataById(String id){ - DynamicData dynamicData = mongoTemplate.findById(id, DynamicData.class); - dynamicData.setPageView(Long.parseLong(dynamicData.getPageView())+1+""); - DynamicData save = mongoTemplate.save(dynamicData); -// Map data = dynamicData.getData(); -// data.forEach((k,v) -> { -// data.put(k,k); -// }); - return AjaxResult.success(save); - } - - @PostMapping("/collectData") - //采集数据 - public AjaxResult collectData(@RequestBody DynamicForm dynamicForm){ - mongoTemplate.save(dynamicForm); - return AjaxResult.success("保存成功"); - } - //根据卡片id查询对应采集数据的列表 - @GetMapping("/collectDataList") - public AjaxResult collectDataList(String id){ - Query query = new Query(); - query.addCriteria(Criteria.where("dynamicDataId").is(id)); - List dynamicForms = mongoTemplate.find(query, DynamicForm.class); - ArrayList list = new ArrayList<>(); - for (DynamicForm dynamicForm : dynamicForms) { - list.add(dynamicForm.getMap()); - } - return AjaxResult.success(list); - } - -} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/controller/DynamicDataController.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/controller/DynamicDataController.java new file mode 100644 index 0000000..5f9931b --- /dev/null +++ b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/controller/DynamicDataController.java @@ -0,0 +1,64 @@ +package com.ruoyi.mongodb.controller; + +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.mongodb.domain.DynamicData; +import com.ruoyi.mongodb.domain.DynamicForm; +import com.ruoyi.mongodb.service.DynamicDataService; +import com.ruoyi.mongodb.service.DynamicFormService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.*; + +/** + * 智能表单模块 + */ + +@RestController +@RequestMapping("/intelligentForm") +public class DynamicDataController extends BaseController { + @Autowired + private MongoTemplate mongoTemplate; + @Autowired + private DynamicDataService dynamicDataService; + @Autowired + private DynamicFormService dynamicFormService; + + //保存数据 + @PostMapping("/saveDynamicData") + public AjaxResult saveDynamicData(@RequestBody Map requestData, HttpServletRequest httpServletRequest) { + dynamicDataService.doSaveDynamicData(requestData,httpServletRequest); + return AjaxResult.success("保存成功"); + } + + //查询全部数据 + @GetMapping("/selectDynamicData") + public AjaxResult selectDynamicData(HttpServletRequest httpServletRequest) { + return AjaxResult.success(dynamicDataService.doSelectDynamicData(httpServletRequest)); + } + //根据id查询数据 + @GetMapping("/selectDynamicDataById") + public AjaxResult selectDynamicDataById(String id){ + return AjaxResult.success(dynamicDataService.doSelectDynamicDataById(id)); + } + + //采集数据 + @PostMapping("/collectData") + public AjaxResult collectData(@RequestBody DynamicForm dynamicForm){ + dynamicFormService.doCollectData(dynamicForm); + return AjaxResult.success("保存成功"); + } + //根据卡片id查询对应采集数据的列表 + @GetMapping("/collectDataList") + public AjaxResult collectDataList(String id){ + return AjaxResult.success(dynamicFormService.doCollectDataList(id)); + } + +} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicDataRepository.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicDataRepository.java new file mode 100644 index 0000000..36abbd5 --- /dev/null +++ b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicDataRepository.java @@ -0,0 +1,14 @@ +package com.ruoyi.mongodb.repository; + +import com.ruoyi.mongodb.domain.DynamicData; +import org.bson.types.ObjectId; +import org.springframework.data.mongodb.repository.MongoRepository; +import org.springframework.data.mongodb.repository.Query; + +import java.util.List; + +public interface DynamicDataRepository extends MongoRepository { + List findByTenantName(String tenantName); + @Query("{'_id': {'$eq': ?0}}") + DynamicData doFindById(ObjectId id); +} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicFormRepository.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicFormRepository.java new file mode 100644 index 0000000..1a5b13e --- /dev/null +++ b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/repository/DynamicFormRepository.java @@ -0,0 +1,11 @@ +package com.ruoyi.mongodb.repository; + +import com.ruoyi.mongodb.domain.DynamicForm; +import org.springframework.data.mongodb.repository.MongoRepository; + +import java.util.List; + +public interface DynamicFormRepository extends MongoRepository { + Long countAllByDynamicDataId(String dynamicDataId); + List findByDynamicDataId(String id); +} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicDataService.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicDataService.java new file mode 100644 index 0000000..2992755 --- /dev/null +++ b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicDataService.java @@ -0,0 +1,74 @@ +package com.ruoyi.mongodb.service; + +import com.ruoyi.mongodb.domain.DynamicData; +import com.ruoyi.mongodb.repository.DynamicDataRepository; +import com.ruoyi.mongodb.repository.DynamicFormRepository; +import org.bson.types.ObjectId; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletRequest; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import static com.ruoyi.common.utils.SecurityUtils.getUsername; + +@Service +public class DynamicDataService { + @Autowired + private DynamicDataRepository dynamicDataRepository; + @Autowired + private DynamicFormRepository dynamicFormRepository; + + //保存数据 + public DynamicData doSaveDynamicData(Map requestData, HttpServletRequest httpServletRequest){ + DynamicData dynamicData = new DynamicData(); + //构造数据结构 + String title = (String)requestData.get("title"); + String pageView = (String)requestData.get("pageView"); + String collectionQuantity = (String)requestData.get("collectionQuantity"); + dynamicData.setTitle(title); + requestData.remove("title"); + dynamicData.setPageView(pageView); + requestData.remove("pageView"); + dynamicData.setCollectionQuantity(collectionQuantity); + requestData.remove("collectionQuantity"); + ArrayList inputarr = (ArrayList)requestData.get("inputarr"); + for (String s : inputarr) { + requestData.put(s,null); + } + requestData.remove("inputarr"); + dynamicData.setCreatePeople(getUsername()); + LocalDate currentDate = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + String formattedDate = currentDate.format(formatter); + dynamicData.setCreateTime(formattedDate); + dynamicData.setData(requestData); + dynamicData.setTenantName(httpServletRequest.getHeader("Tenant")); + return dynamicDataRepository.save(dynamicData);//插入dynamicData数据 + } + + //查询全部数据 + public List doSelectDynamicData(HttpServletRequest httpServletRequest){ + //查询对应租户下的卡片列表数据 + List dynamicData = dynamicDataRepository.findByTenantName(httpServletRequest.getHeader("Tenant")); + for (DynamicData dynamicDatum : dynamicData) { + //查询对应卡片链接采集到数据的数量 + Long count = dynamicFormRepository.countAllByDynamicDataId(dynamicDatum.getId()); + dynamicDatum.setCollectionQuantity(count+""); + } + return dynamicData; + } + + //根据id查询数据 + public DynamicData doSelectDynamicDataById(String id){ + ObjectId objectId = new ObjectId(id); + DynamicData dynamicData = dynamicDataRepository.doFindById(objectId); + dynamicData.setPageView(Long.parseLong(dynamicData.getPageView())+1+""); + return dynamicDataRepository.save(dynamicData); + } + +} diff --git a/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicFormService.java b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicFormService.java new file mode 100644 index 0000000..df4b06f --- /dev/null +++ b/ruoyi-mongodb/src/main/java/com/ruoyi/mongodb/service/DynamicFormService.java @@ -0,0 +1,36 @@ +package com.ruoyi.mongodb.service; + +import com.ruoyi.mongodb.domain.DynamicForm; +import com.ruoyi.mongodb.repository.DynamicFormRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +@Service +public class DynamicFormService { + @Autowired + private DynamicFormRepository dynamicFormRepository; + + //查询对应卡片采集数据的数量 + public Long findDynamicFormToCount(String id){ + return dynamicFormRepository.countAllByDynamicDataId(id); + } + + //采集数据 + public void doCollectData(DynamicForm dynamicForm){ + dynamicFormRepository.save(dynamicForm); + } + + //根据卡片id查询对应采集数据的列表 + public ArrayList doCollectDataList(String id){ + List dynamicForms = dynamicFormRepository.findByDynamicDataId(id); + ArrayList list = new ArrayList<>(); + for (DynamicForm dynamicForm : dynamicForms) { + list.add(dynamicForm.getMap()); + } + return list; + } + +} diff --git a/ruoyi-ui/src/views/crm/ticket/index.vue b/ruoyi-ui/src/views/crm/ticket/index.vue index 42e903b..509fa20 100644 --- a/ruoyi-ui/src/views/crm/ticket/index.vue +++ b/ruoyi-ui/src/views/crm/ticket/index.vue @@ -107,14 +107,14 @@ - - - - - - - - + + + @@ -179,7 +179,7 @@ - + --> - + - + - - - + + + - + - - - - - - + + + +