Commit fcbaeea387181308154d7f486d5ce53457e1da9d
m
Showing
37 changed files
with
1213 additions
and
957 deletions
trash-admin/src/main/resources/application-dev.yml
| ... | ... | @@ -9,7 +9,7 @@ trash: |
| 9 | 9 | # 实例演示开关 |
| 10 | 10 | demoEnabled: true |
| 11 | 11 | # 文件路径 示例( Windows配置D:/trash/uploadPath,Linux配置 /home/trash/uploadPath,存储桶 trash/uploadPath,nginx配置 /trash/upload) |
| 12 | - profile: D:/trash/uploadPath | |
| 12 | + profile: /home/trash/uploadPath | |
| 13 | 13 | # profile: E:/trash/uploadPath |
| 14 | 14 | # profile: F:/work/project/Documents/uploadPath/trash |
| 15 | 15 | # 获取ip地址开关 |
| ... | ... | @@ -86,7 +86,7 @@ spring: |
| 86 | 86 | # redis 配置 |
| 87 | 87 | redis: |
| 88 | 88 | # 地址 |
| 89 | - host: localhost | |
| 89 | + host: 127.0.0.1 | |
| 90 | 90 | # 端口,默认为6379 |
| 91 | 91 | port: 6379 |
| 92 | 92 | # 密码 | ... | ... |
trash-admin/src/main/resources/application-local.yml
0 → 100644
| 1 | +# 项目相关配置 | |
| 2 | +trash: | |
| 3 | + # 名称 | |
| 4 | + name: trash | |
| 5 | + # 版本 | |
| 6 | + version: 3.2.0 | |
| 7 | + # 版权年份 | |
| 8 | + copyrightYear: 2020 | |
| 9 | + # 实例演示开关 | |
| 10 | + demoEnabled: true | |
| 11 | + # 文件路径 示例( Windows配置D:/trash/uploadPath,Linux配置 /home/trash/uploadPath,存储桶 trash/uploadPath,nginx配置 /trash/upload) | |
| 12 | + profile: D:/trash/uploadPath | |
| 13 | +# profile: E:/trash/uploadPath | |
| 14 | +# profile: F:/work/project/Documents/uploadPath/trash | |
| 15 | +# 获取ip地址开关 | |
| 16 | + addressEnabled: false | |
| 17 | + # 验证码类型 math 数组计算 char 字符验证 | |
| 18 | + captchaType: math | |
| 19 | + # 远程服务器地址 | |
| 20 | + #remotePath: http://175.6.47.84:8008 | |
| 21 | + #token: durable:auth:token:eyJhbGciOiJIUzUxMiJ9.eyJ5ZWEiOiJkdXJhYmxlIiwiZXhwIjo0MTAyNDE1OTk5LCJjcmVhdGVkIjoxNjg1NDE2NjEzMzU1fQ.58-J0KKfsK2pQhDQAzaBaUj-oFWMbYF1YzMAcshmcfidIkW16TZWIVhAVKPvCJvWfG54x7xB-ETxKCDLFnSctQ | |
| 22 | + #remotePath: http://cszhatu.natapp1.cc | |
| 23 | + remotePath: http://183.66.242.6:14601 | |
| 24 | + token: durable:auth:token:eyJhbGciOiJIUzUxMiJ9.eyJ5ZWEiOiJjc3poIiwiZXhwIjo0MTAyNDE1OTk5LCJjcmVhdGVkIjoxNjg0NDU5MjEzNzQ2fQ.85oIrOnU7cz7L_-IGt4Bt1LXDTkFtyrdqNt05K0v9-4nsrrzzpbjbemK-yMlbnUpe4Fx2FFES-Wbw8Yr8ML69w | |
| 25 | + | |
| 26 | + | |
| 27 | +# 数据源配置 | |
| 28 | +spring: | |
| 29 | + datasource: | |
| 30 | + type: com.alibaba.druid.pool.DruidDataSource | |
| 31 | + driverClassName: com.mysql.cj.jdbc.Driver | |
| 32 | + druid: | |
| 33 | + # 主库数据源 | |
| 34 | + master: | |
| 35 | +# url: jdbc:mysql://localhost:3306/trash?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true | |
| 36 | + url: jdbc:mysql://192.168.168.141:3306/trash?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true | |
| 37 | + username: root | |
| 38 | + password: root | |
| 39 | + # 从库数据源 | |
| 40 | + slave: | |
| 41 | + # 从数据源开关/默认关闭 | |
| 42 | + enabled: false | |
| 43 | + url: | |
| 44 | + username: | |
| 45 | + password: | |
| 46 | + # 初始连接数 | |
| 47 | + initialSize: 5 | |
| 48 | + # 最小连接池数量 | |
| 49 | + minIdle: 10 | |
| 50 | + # 最大连接池数量 | |
| 51 | + maxActive: 20 | |
| 52 | + # 配置获取连接等待超时的时间 | |
| 53 | + maxWait: 60000 | |
| 54 | + # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 | |
| 55 | + timeBetweenEvictionRunsMillis: 60000 | |
| 56 | + # 配置一个连接在池中最小生存的时间,单位是毫秒 | |
| 57 | + minEvictableIdleTimeMillis: 300000 | |
| 58 | + # 配置一个连接在池中最大生存的时间,单位是毫秒 | |
| 59 | + maxEvictableIdleTimeMillis: 900000 | |
| 60 | + # 配置检测连接是否有效 | |
| 61 | + validationQuery: SELECT 1 FROM DUAL | |
| 62 | + testWhileIdle: true | |
| 63 | + testOnBorrow: false | |
| 64 | + testOnReturn: false | |
| 65 | + webStatFilter: | |
| 66 | + enabled: false | |
| 67 | + statViewServlet: | |
| 68 | + enabled: false | |
| 69 | + # 设置白名单,不填则允许所有访问 | |
| 70 | + allow: | |
| 71 | + url-pattern: /druid/* | |
| 72 | + # 控制台管理用户名和密码 | |
| 73 | + login-username: youxiw2000 | |
| 74 | + login-password: Noah5201 | |
| 75 | + filter: | |
| 76 | + stat: | |
| 77 | + enabled: true | |
| 78 | + # 慢SQL记录 | |
| 79 | + log-slow-sql: true | |
| 80 | + slow-sql-millis: 1000 | |
| 81 | + merge-sql: true | |
| 82 | + wall: | |
| 83 | + config: | |
| 84 | + multi-statement-allow: true | |
| 85 | + # redis 配置 | |
| 86 | + redis: | |
| 87 | + # 地址 | |
| 88 | + host: 127.0.0.1 | |
| 89 | + # 端口,默认为6379 | |
| 90 | + port: 6379 | |
| 91 | + # 密码 | |
| 92 | + password: | |
| 93 | + # 连接超时时间 | |
| 94 | + timeout: 10s | |
| 95 | + database: 11 | |
| 96 | + lettuce: | |
| 97 | + pool: | |
| 98 | + # 连接池中的最小空闲连接 | |
| 99 | + min-idle: 0 | |
| 100 | + # 连接池中的最大空闲连接 | |
| 101 | + max-idle: 8 | |
| 102 | + # 连接池的最大数据库连接数 | |
| 103 | + max-active: 8 | |
| 104 | + #连接池最大阻塞等待时间(使用负值表示没有限制) | |
| 105 | + max-wait: -1ms | |
| 106 | +# 开发环境配置 | |
| 107 | +server: | |
| 108 | + # 服务器的HTTP端口,默认为8080 | |
| 109 | + port: 8080 | |
| 110 | + servlet: | |
| 111 | + # 应用的访问路径 | |
| 112 | + context-path: /workflow | |
| 113 | + tomcat: | |
| 114 | + # tomcat的URI编码 | |
| 115 | + uri-encoding: UTF-8 | |
| 116 | + # tomcat最大线程数,默认为200 | |
| 117 | + max-threads: 800 | |
| 118 | + # Tomcat启动初始化的线程数,默认值25 | |
| 119 | + min-spare-threads: 30 | |
| 120 | +#华为OBS存储 | |
| 121 | +huawei: | |
| 122 | + enabled: false | |
| 123 | + endPoint: | |
| 124 | + ak: | |
| 125 | + sk: | |
| 126 | + url: | |
| 127 | + bucketName: | |
| 128 | +#nginx静态文件 | |
| 129 | +nginx: | |
| 130 | + enabled: false | |
| 131 | + path: | |
| 132 | + url: | |
| 133 | + | |
| 134 | +# 生成二维码 前端地址 | |
| 135 | +front: | |
| 136 | + url: "http://61.169.120.202:5173/pages/order/guest/index?orderId=" | |
| 0 | 137 | \ No newline at end of file | ... | ... |
trash-admin/src/main/resources/logback.xml
| ... | ... | @@ -2,7 +2,7 @@ |
| 2 | 2 | <configuration> |
| 3 | 3 | <!-- 日志存放路径 --> |
| 4 | 4 | <!-- <property name="log.path" value="/home/trash/logs" />--> |
| 5 | - <property name="log.path" value="C:/work/project/logs/trash" /> | |
| 5 | + <property name="log.path" value="logs/trash" /> | |
| 6 | 6 | <!-- 日志输出格式 --> |
| 7 | 7 | <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> |
| 8 | 8 | ... | ... |
trash-admin/src/main/resources/static/car_1.png
trash-admin/src/main/resources/static/car_2.png
trash-admin/src/main/resources/static/goubiche.png
0 → 100644
254 KB
trash-admin/src/main/resources/static/zixieche.jpg
0 → 100644
198 KB
trash-garbage/src/main/java/com/trash/garbage/controller/GarbageOrderController.java
| ... | ... | @@ -29,6 +29,7 @@ import com.trash.garbage.pojo.vo.OrderDetailVo; |
| 29 | 29 | import com.trash.garbage.pojo.vo.ScanDriverDetailVo; |
| 30 | 30 | import com.trash.garbage.service.GarOrderService; |
| 31 | 31 | import com.trash.garbage.service.GarUserService; |
| 32 | +import lombok.extern.slf4j.Slf4j; | |
| 32 | 33 | import org.apache.commons.lang3.ArrayUtils; |
| 33 | 34 | import org.springframework.beans.factory.annotation.Autowired; |
| 34 | 35 | import org.springframework.security.access.prepost.PreAuthorize; |
| ... | ... | @@ -49,6 +50,7 @@ import java.util.Objects; |
| 49 | 50 | */ |
| 50 | 51 | @RestController |
| 51 | 52 | @RequestMapping("/order") |
| 53 | +@Slf4j | |
| 52 | 54 | public class GarbageOrderController { |
| 53 | 55 | |
| 54 | 56 | @Autowired |
| ... | ... | @@ -92,6 +94,7 @@ public class GarbageOrderController { |
| 92 | 94 | // 上传并返回新文件名称 |
| 93 | 95 | fileName = FileUploadUtils.upload(filePath, file); |
| 94 | 96 | } catch (IOException e) { |
| 97 | + log.error("上传图片异常",e); | |
| 95 | 98 | throw new BizException(ResultCode.CODE_400, ResultCode.CODE_400.getMsg()); |
| 96 | 99 | } |
| 97 | 100 | String url = serverConfig.getUrl() + fileName; | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/mapper/GarOrderMatchHandlerMapper.java
| ... | ... | @@ -7,6 +7,7 @@ import com.trash.garbage.pojo.vo.DispatchDriverVo; |
| 7 | 7 | import org.apache.ibatis.annotations.Param; |
| 8 | 8 | |
| 9 | 9 | import java.util.List; |
| 10 | +import java.util.Set; | |
| 10 | 11 | |
| 11 | 12 | /** |
| 12 | 13 | * @author 20412 |
| ... | ... | @@ -16,7 +17,7 @@ import java.util.List; |
| 16 | 17 | */ |
| 17 | 18 | public interface GarOrderMatchHandlerMapper extends BaseMapper<GarOrderMatchHandler> { |
| 18 | 19 | |
| 19 | - List<DispatchDriverVo> queryDriverListWithDispatchStatus(@Param("orderId") String orderId, @Param("companyId") Long id); | |
| 20 | + List<DispatchDriverVo> queryDriverListWithDispatchStatus(@Param("orderId") String orderId, @Param("companyId") Long id,@Param("containerVolumees") Set<String> containerVolumees); | |
| 20 | 21 | } |
| 21 | 22 | |
| 22 | 23 | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/pojo/domain/GarOrderCar.java
| 1 | 1 | package com.trash.garbage.pojo.domain; |
| 2 | 2 | |
| 3 | -import com.baomidou.mybatisplus.annotation.*; | |
| 3 | +import com.baomidou.mybatisplus.annotation.FieldFill; | |
| 4 | +import com.baomidou.mybatisplus.annotation.TableField; | |
| 5 | +import com.baomidou.mybatisplus.annotation.TableId; | |
| 6 | +import com.baomidou.mybatisplus.annotation.TableName; | |
| 7 | +import lombok.Data; | |
| 4 | 8 | |
| 5 | 9 | import java.io.Serializable; |
| 6 | 10 | import java.util.Date; |
| 7 | -import lombok.Data; | |
| 8 | 11 | |
| 9 | 12 | /** |
| 10 | 13 | * 订单车辆信息 |
| ... | ... | @@ -57,6 +60,10 @@ public class GarOrderCar implements Serializable { |
| 57 | 60 | */ |
| 58 | 61 | @TableField(fill = FieldFill.INSERT_UPDATE) |
| 59 | 62 | private String garUpdateBy; |
| 63 | + /**车辆ID*/ | |
| 64 | + private Integer carId; | |
| 65 | + /**车辆容积*/ | |
| 66 | + private String containerVolume; | |
| 60 | 67 | |
| 61 | 68 | /** |
| 62 | 69 | * |
| ... | ... | @@ -66,6 +73,8 @@ public class GarOrderCar implements Serializable { |
| 66 | 73 | @TableField(exist = false) |
| 67 | 74 | private static final long serialVersionUID = 1L; |
| 68 | 75 | |
| 76 | + | |
| 77 | + | |
| 69 | 78 | public String getGarId() { |
| 70 | 79 | return garId; |
| 71 | 80 | } | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/pojo/dto/OrderDto.java
| ... | ... | @@ -106,6 +106,8 @@ public class OrderDto { |
| 106 | 106 | private Integer id; |
| 107 | 107 | private String garOrderCarType; |
| 108 | 108 | |
| 109 | + private String containerVolume; | |
| 110 | + | |
| 109 | 111 | public Integer getGarOrderCarNumber() { |
| 110 | 112 | return garOrderCarNumber; |
| 111 | 113 | } |
| ... | ... | @@ -141,8 +143,13 @@ public class OrderDto { |
| 141 | 143 | this.id = id; |
| 142 | 144 | } |
| 143 | 145 | |
| 146 | + public String getContainerVolume() { | |
| 147 | + return containerVolume; | |
| 148 | + } | |
| 144 | 149 | |
| 145 | - | |
| 150 | + public void setContainerVolume(String containerVolume) { | |
| 151 | + this.containerVolume = containerVolume; | |
| 152 | + } | |
| 146 | 153 | } |
| 147 | 154 | |
| 148 | 155 | public List<CarInfo> getGarCarInfoList() { | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/service/GarOrderCarService.java
| 1 | 1 | package com.trash.garbage.service; |
| 2 | 2 | |
| 3 | -import com.trash.garbage.pojo.domain.GarOrderCar; | |
| 4 | 3 | import com.baomidou.mybatisplus.extension.service.IService; |
| 4 | +import com.trash.garbage.pojo.domain.GarOrderCar; | |
| 5 | + | |
| 6 | +import java.util.List; | |
| 5 | 7 | |
| 6 | 8 | /** |
| 7 | 9 | * @author 20412 |
| ... | ... | @@ -9,5 +11,5 @@ import com.baomidou.mybatisplus.extension.service.IService; |
| 9 | 11 | * @createDate 2024-01-09 14:26:09 |
| 10 | 12 | */ |
| 11 | 13 | public interface GarOrderCarService extends IService<GarOrderCar> { |
| 12 | - | |
| 14 | + List<GarOrderCar> queryByOrderId(String orderId); | |
| 13 | 15 | } | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/service/GarOrderMatchHandlerService.java
| 1 | 1 | package com.trash.garbage.service; |
| 2 | 2 | |
| 3 | -import com.trash.garbage.pojo.domain.GarOrderMatchHandler; | |
| 4 | 3 | import com.baomidou.mybatisplus.extension.service.IService; |
| 4 | +import com.trash.garbage.pojo.domain.GarOrderMatchHandler; | |
| 5 | 5 | import com.trash.garbage.pojo.vo.DispatchDriverVo; |
| 6 | -import org.apache.ibatis.annotations.Param; | |
| 7 | 6 | |
| 8 | 7 | import java.util.List; |
| 8 | +import java.util.Set; | |
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * @author 20412 |
| ... | ... | @@ -14,5 +14,5 @@ import java.util.List; |
| 14 | 14 | */ |
| 15 | 15 | public interface GarOrderMatchHandlerService extends IService<GarOrderMatchHandler> { |
| 16 | 16 | |
| 17 | - List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, Long companyId); | |
| 17 | + List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, Long companyId, Set<String> containerVolumees); | |
| 18 | 18 | } | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderCarServiceImpl.java
| 1 | 1 | package com.trash.garbage.service.impl; |
| 2 | 2 | |
| 3 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
| 3 | 4 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| 4 | 5 | import com.trash.garbage.pojo.domain.GarOrderCar; |
| 5 | 6 | import com.trash.garbage.service.GarOrderCarService; |
| 6 | 7 | import com.trash.garbage.mapper.GarOrderCarMapper; |
| 7 | 8 | import org.springframework.stereotype.Service; |
| 8 | 9 | |
| 10 | +import java.util.List; | |
| 11 | + | |
| 9 | 12 | /** |
| 10 | -* @author 20412 | |
| 11 | -* @description 针对表【gar_order_car(订单车辆信息)】的数据库操作Service实现 | |
| 12 | -* @createDate 2024-01-09 14:26:09 | |
| 13 | -*/ | |
| 13 | + * @author 20412 | |
| 14 | + * @description 针对表【gar_order_car(订单车辆信息)】的数据库操作Service实现 | |
| 15 | + * @createDate 2024-01-09 14:26:09 | |
| 16 | + */ | |
| 14 | 17 | @Service |
| 15 | 18 | public class GarOrderCarServiceImpl extends ServiceImpl<GarOrderCarMapper, GarOrderCar> |
| 16 | - implements GarOrderCarService{ | |
| 19 | + implements GarOrderCarService { | |
| 17 | 20 | |
| 21 | + @Override | |
| 22 | + public List<GarOrderCar> queryByOrderId(String orderId) { | |
| 23 | + LambdaQueryWrapper<GarOrderCar> wrapper = new LambdaQueryWrapper<>(); | |
| 24 | + wrapper.eq(GarOrderCar::getGarOrderId, orderId); | |
| 25 | + return list(wrapper); | |
| 26 | + } | |
| 18 | 27 | } |
| 19 | 28 | |
| 20 | 29 | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderMatchHandlerServiceImpl.java
| ... | ... | @@ -8,6 +8,7 @@ import com.trash.garbage.service.GarOrderMatchHandlerService; |
| 8 | 8 | import org.springframework.stereotype.Service; |
| 9 | 9 | |
| 10 | 10 | import java.util.List; |
| 11 | +import java.util.Set; | |
| 11 | 12 | |
| 12 | 13 | /** |
| 13 | 14 | * @author 20412 |
| ... | ... | @@ -19,8 +20,8 @@ public class GarOrderMatchHandlerServiceImpl extends ServiceImpl<GarOrderMatchHa |
| 19 | 20 | implements GarOrderMatchHandlerService { |
| 20 | 21 | |
| 21 | 22 | @Override |
| 22 | - public List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, Long id) { | |
| 23 | - return baseMapper.queryDriverListWithDispatchStatus(orderId, id); | |
| 23 | + public List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, Long id, Set<String> containerVolumees) { | |
| 24 | + return baseMapper.queryDriverListWithDispatchStatus(orderId, id,containerVolumees); | |
| 24 | 25 | } |
| 25 | 26 | } |
| 26 | 27 | ... | ... |
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderServiceImpl.java
| ... | ... | @@ -106,6 +106,8 @@ public class GarOrderServiceImpl extends ServiceImpl<GarOrderMapper, GarOrder> |
| 106 | 106 | GarOrderCar car = new GarOrderCar(); |
| 107 | 107 | car.setGarOrderCarType(carInfo.getGarOrderCarType()); |
| 108 | 108 | car.setGarOrderId(order.getGarOrderId()); |
| 109 | + car.setCarId(carInfo.getId()); | |
| 110 | + car.setContainerVolume(carInfo.getContainerVolume()); | |
| 109 | 111 | car.setGarOrderCarUserType(GlobalStatus.GarOrderStatus.PLAN_CAR_TYPE.getValue()); |
| 110 | 112 | garOrderCars.add(car); |
| 111 | 113 | } |
| ... | ... | @@ -486,6 +488,8 @@ public class GarOrderServiceImpl extends ServiceImpl<GarOrderMapper, GarOrder> |
| 486 | 488 | GarOrderCar car = new GarOrderCar(); |
| 487 | 489 | car.setGarOrderCarType(carInfo.getGarOrderCarType()); |
| 488 | 490 | car.setGarOrderId(dto.getGarOrderId()); |
| 491 | + car.setContainerVolume(carInfo.getContainerVolume()); | |
| 492 | + car.setCarId(carInfo.getId()); | |
| 489 | 493 | car.setGarOrderCarUserType(GlobalStatus.GarOrderStatus.REAL_CAR_TYPE.getValue()); |
| 490 | 494 | garOrderCars.add(car); |
| 491 | 495 | } |
| ... | ... | @@ -817,8 +821,18 @@ public class GarOrderServiceImpl extends ServiceImpl<GarOrderMapper, GarOrder> |
| 817 | 821 | TransportationEnterprise enterprise = new TransportationEnterprise(); |
| 818 | 822 | enterprise.setServicePhone(tel); |
| 819 | 823 | List<TransportationEnterprise> enterprises = transportationEnterpriseService.selectTransportationEnterpriseList(enterprise); |
| 824 | + if(CollectionUtils.isEmpty(enterprises)){ | |
| 825 | + return Collections.emptyList(); | |
| 826 | + } | |
| 827 | + | |
| 828 | + List<GarOrderCar> garOrderCars = garOrderCarService.queryByOrderId(orderId); | |
| 829 | + if(CollectionUtils.isEmpty(garOrderCars)){ | |
| 830 | + return Collections.emptyList(); | |
| 831 | + } | |
| 832 | + | |
| 833 | + Set<String> containerVolumees = garOrderCars.stream().map(GarOrderCar::getContainerVolume).collect(Collectors.toSet()); | |
| 820 | 834 | // 选中的司机 |
| 821 | - List<DispatchDriverVo> voList = handlerService.queryDriverListWithDispatchStatus(orderId, enterprises.get(0).getId()); | |
| 835 | + List<DispatchDriverVo> voList = handlerService.queryDriverListWithDispatchStatus(orderId, enterprises.get(0).getId(),containerVolumees); | |
| 822 | 836 | return voList; |
| 823 | 837 | } |
| 824 | 838 | ... | ... |
trash-garbage/src/main/resources/mapper/GarOrderMatchHandlerMapper.xml
| ... | ... | @@ -58,6 +58,9 @@ |
| 58 | 58 | LEFT JOIN gar_order_match_handler gar ON gar.gar_order_handler_tel = driver.phoneNo |
| 59 | 59 | AND gar.gar_order_id = #{orderId} AND gar.gar_handler_car_code = car.car_code |
| 60 | 60 | WHERE |
| 61 | - driver.company_id = #{companyId} | |
| 61 | + driver.company_id = #{companyId} and container_volume in | |
| 62 | + <foreach collection="containerVolumees" item="item" open="(" close=")" separator=","> | |
| 63 | + #{item} | |
| 64 | + </foreach> | |
| 62 | 65 | </select> |
| 63 | 66 | </mapper> | ... | ... |
trash-ui/src/views/activiti/task/index.vue
| 1 | -<template> | |
| 2 | - <div class="app-container"> | |
| 3 | - <el-select v-model="queryParams.dept" filterable reserve-keyword > | |
| 4 | - <el-option v-for="item in depts" :label="item.name" | |
| 5 | - :value="item.code" :key="item.code"> | |
| 6 | - </el-option> | |
| 7 | - </el-select> | |
| 8 | - <el-select v-model="queryParams.role" filterable reserve-keyword > | |
| 9 | - <el-option v-for="item in roles" :label="item.name" | |
| 10 | - :value="item.code" :key="item.code"> | |
| 11 | - </el-option> | |
| 12 | - </el-select> | |
| 13 | - | |
| 14 | - <el-input v-model="queryParams.name" placeholder="名称" style="width:200px;"></el-input> | |
| 15 | - <!-- <el-select v-model="queryParams.name" filterable reserve-keyword :filter-method="remoteName" placeholder="名称"> | |
| 16 | - <el-option v-for="item in names" :label="item" :value="item"> | |
| 17 | - </el-option> | |
| 18 | - </el-select> --> | |
| 19 | - | |
| 20 | - <el-select v-model="queryParams.prev" filterable reserve-keyword placeholder="上一节点"> | |
| 21 | - <el-option v-for="item in prev" :label="item.name" :value="item.name"> | |
| 22 | - </el-option> | |
| 23 | - </el-select> | |
| 24 | - <el-select v-model="queryParams.type" filterable reserve-keyword> | |
| 25 | - <el-option label="建筑垃圾许可证审批" value="workflow_constructsite"/> | |
| 26 | - <el-option label="消纳合同申报备案" value="workflow_conract"/> | |
| 27 | - <el-option label="处理场所备案" value="workflow_earthsites"/> | |
| 28 | - <el-option label="运输企业准入流程" value="workflow_company"/> | |
| 29 | - <el-option label="运输车辆准入流程" value="workflow_vehicle"/> | |
| 30 | - <el-option label="驾驶员信息审批" value="workflow_driver"/> | |
| 31 | - <el-option label="报工审批" value="workflow_threestep"/> | |
| 32 | - <el-option label="交办案卷" value="workflow_caseoffline"/> | |
| 33 | - <el-option label="违规案卷处置流程" value="workflow_casefile"/> | |
| 34 | - <el-option label="平台预警信息" value="violation_warning"/> | |
| 35 | - <el-option label="办文办事" value="handleAffairs"/> | |
| 36 | - <el-option label="后勤管理" value="logistics"/> | |
| 37 | - <el-option label="会议事务" value="conference"/> | |
| 38 | - <el-option label="假勤管理" value="workflow_leave"/> | |
| 39 | - <el-option label="纪检督察" value="supervision-gongdi,supervision_anjuan,supervision_company,supervision_xnc,supervision_casefile,supervision_contract,workflow_supervision"/> | |
| 40 | - </el-select> | |
| 41 | - | |
| 42 | - <el-button type="primary" size="mini" @click="queryParams.pageNum = 1;getList();">搜索</el-button> | |
| 43 | - <el-button size="mini" @click="resetQuery">重置</el-button> | |
| 44 | - | |
| 45 | - | |
| 46 | - <taskCard :task="task" v-for="task in taskList" @sendToParent="showTask"/> | |
| 47 | - | |
| 48 | - <pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" | |
| 49 | - @pagination="getList"/> | |
| 50 | - | |
| 51 | - <!-- 审批对话框 --> | |
| 52 | - <el-dialog :title="title" :visible.sync="open" v-if="open" width="500px" append-to-body> | |
| 53 | - | |
| 54 | - <div slot="footer" class="dialog-footer"> | |
| 55 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 56 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 57 | - </div> | |
| 58 | - </el-dialog> | |
| 59 | - | |
| 60 | - <el-dialog :title="title" :visible.sync="open2" width="800px" append-to-body> | |
| 61 | - <threestepInfo :businessKey="businessKey" v-if="open2"/> | |
| 62 | - <el-form ref="form" :model="form" :rules="rules" label-width="120px"> | |
| 63 | - <el-row type="flex" justify="center"> | |
| 64 | - <el-col> | |
| 65 | - <el-form-item label="补充说明" prop="subReason"> | |
| 66 | - <el-input type="textarea" v-model="form.subReason" maxlength=100 show-word-limit='true'/> | |
| 67 | - </el-form-item> | |
| 68 | - </el-col> | |
| 69 | - </el-row> | |
| 70 | - <el-row type="flex" justify="center"> | |
| 71 | - <el-col :span="12"> | |
| 72 | - <el-form-item label="渣管负责人"> | |
| 73 | - <el-input v-model="form.earthPipPerson"/> | |
| 74 | - </el-form-item> | |
| 75 | - </el-col> | |
| 76 | - <el-col :span="12"> | |
| 77 | - <el-form-item label="执法负责人"> | |
| 78 | - <el-input v-model="form.enforcePerson"/> | |
| 79 | - </el-form-item> | |
| 80 | - </el-col> | |
| 81 | - </el-row> | |
| 82 | - <el-row type="flex" justify="center"> | |
| 83 | - <el-col> | |
| 84 | - 上传补充材料:<a style="color:blue;font-size: 12px;" @click="picSample=true">示意图</a> | |
| 85 | - </el-col> | |
| 86 | - </el-row> | |
| 87 | - <el-row type="flex" justify="center" style="margin-top: 20px;"> | |
| 1 | +<template> | |
| 2 | + <div class="app-container"> | |
| 3 | + <el-select v-model="queryParams.dept" filterable reserve-keyword > | |
| 4 | + <el-option v-for="item in depts" :label="item.name" | |
| 5 | + :value="item.code" :key="item.code"> | |
| 6 | + </el-option> | |
| 7 | + </el-select> | |
| 8 | + <el-select v-model="queryParams.role" filterable reserve-keyword > | |
| 9 | + <el-option v-for="item in roles" :label="item.name" | |
| 10 | + :value="item.code" :key="item.code"> | |
| 11 | + </el-option> | |
| 12 | + </el-select> | |
| 13 | + | |
| 14 | + <el-input v-model="queryParams.name" placeholder="名称" style="width:200px;"></el-input> | |
| 15 | + <!-- <el-select v-model="queryParams.name" filterable reserve-keyword :filter-method="remoteName" placeholder="名称"> | |
| 16 | + <el-option v-for="item in names" :label="item" :value="item"> | |
| 17 | + </el-option> | |
| 18 | + </el-select> --> | |
| 19 | + | |
| 20 | + <el-select v-model="queryParams.prev" filterable reserve-keyword placeholder="上一节点"> | |
| 21 | + <el-option v-for="item in prev" :label="item.name" :value="item.name"> | |
| 22 | + </el-option> | |
| 23 | + </el-select> | |
| 24 | + <el-select v-model="queryParams.type" filterable reserve-keyword> | |
| 25 | + <el-option label="建筑垃圾许可证审批" value="workflow_constructsite"/> | |
| 26 | + <el-option label="消纳合同申报备案" value="workflow_conract"/> | |
| 27 | + <el-option label="处理场所备案" value="workflow_earthsites"/> | |
| 28 | + <el-option label="运输企业准入流程" value="workflow_company"/> | |
| 29 | + <el-option label="运输车辆准入流程" value="workflow_vehicle"/> | |
| 30 | + <el-option label="驾驶员信息审批" value="workflow_driver"/> | |
| 31 | + <el-option label="报工审批" value="workflow_threestep"/> | |
| 32 | + <el-option label="交办案卷" value="workflow_caseoffline"/> | |
| 33 | + <el-option label="违规案卷处置流程" value="workflow_casefile"/> | |
| 34 | + <el-option label="平台预警信息" value="violation_warning"/> | |
| 35 | + <el-option label="办文办事" value="handleAffairs"/> | |
| 36 | + <el-option label="后勤管理" value="logistics"/> | |
| 37 | + <el-option label="会议事务" value="conference"/> | |
| 38 | + <el-option label="假勤管理" value="workflow_leave"/> | |
| 39 | + <el-option label="纪检督察" value="supervision-gongdi,supervision_anjuan,supervision_company,supervision_xnc,supervision_casefile,supervision_contract,workflow_supervision"/> | |
| 40 | + </el-select> | |
| 41 | + | |
| 42 | + <el-button type="primary" size="mini" @click="queryParams.pageNum = 1;getList();">搜索</el-button> | |
| 43 | + <el-button size="mini" @click="resetQuery">重置</el-button> | |
| 44 | + | |
| 45 | + | |
| 46 | + <taskCard :task="task" v-for="task in taskList" @sendToParent="showTask"/> | |
| 47 | + | |
| 48 | + <pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" | |
| 49 | + @pagination="getList"/> | |
| 50 | + | |
| 51 | + <!-- 审批对话框 --> | |
| 52 | + <el-dialog :title="title" :visible.sync="open" v-if="open" width="500px" append-to-body> | |
| 53 | + | |
| 54 | + <div slot="footer" class="dialog-footer"> | |
| 55 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 56 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 57 | + </div> | |
| 58 | + </el-dialog> | |
| 59 | + | |
| 60 | + <el-dialog :title="title" :visible.sync="open2" width="800px" append-to-body> | |
| 61 | + <threestepInfo :businessKey="businessKey" v-if="open2"/> | |
| 62 | + <el-form ref="form" :model="form" :rules="rules" label-width="120px"> | |
| 63 | + <el-row type="flex" justify="center"> | |
| 64 | + <el-col> | |
| 65 | + <el-form-item label="补充说明" prop="subReason"> | |
| 66 | + <el-input type="textarea" v-model="form.subReason" maxlength=100 show-word-limit='true'/> | |
| 67 | + </el-form-item> | |
| 68 | + </el-col> | |
| 69 | + </el-row> | |
| 70 | + <el-row type="flex" justify="center"> | |
| 71 | + <el-col :span="12"> | |
| 72 | + <el-form-item label="渣管负责人"> | |
| 73 | + <el-input v-model="form.earthPipPerson"/> | |
| 74 | + </el-form-item> | |
| 75 | + </el-col> | |
| 76 | + <el-col :span="12"> | |
| 77 | + <el-form-item label="执法负责人"> | |
| 78 | + <el-input v-model="form.enforcePerson"/> | |
| 79 | + </el-form-item> | |
| 80 | + </el-col> | |
| 81 | + </el-row> | |
| 82 | + <el-row type="flex" justify="center"> | |
| 83 | + <el-col> | |
| 84 | + 上传补充材料:<a style="color:blue;font-size: 12px;" @click="picSample=true">示意图</a> | |
| 85 | + </el-col> | |
| 86 | + </el-row> | |
| 87 | + <el-row type="flex" justify="center" style="margin-top: 20px;"> | |
| 88 | 88 | <el-col :span="6"> |
| 89 | - <span style="color: red;" >*</span> | |
| 90 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(0)">履职情况照片</a> | |
| 91 | - <br/> | |
| 92 | - <el-image v-for="item in slides[0]" | |
| 93 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 94 | - :src="item.url" | |
| 95 | - :preview-src-list="[item.url]" | |
| 96 | - :z-index="2000"> | |
| 97 | - </el-image> | |
| 98 | - <el-input v-model="form.sub_img0" type="hidden"></el-input> | |
| 99 | - <p v-for="img in form.sub_img0">{{ img.split(":")[0] }}<a @click="removeImage(0,img)" style="color:red"> | |
| 100 | - x</a> | |
| 101 | - </p> | |
| 102 | - </el-col> | |
| 89 | + <span style="color: red;" >*</span> | |
| 90 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(0)">履职情况照片</a> | |
| 91 | + <br/> | |
| 92 | + <el-image v-for="item in slides[0]" | |
| 93 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 94 | + :src="item.url" | |
| 95 | + :preview-src-list="[item.url]" | |
| 96 | + :z-index="2000"> | |
| 97 | + </el-image> | |
| 98 | + <el-input v-model="form.sub_img0" type="hidden"></el-input> | |
| 99 | + <p v-for="img in form.sub_img0">{{ img.split(":")[0] }}<a @click="removeImage(0,img)" style="color:red"> | |
| 100 | + x</a> | |
| 101 | + </p> | |
| 102 | + </el-col> | |
| 103 | 103 | <el-col :span="6"> |
| 104 | - <span style="color: red;" >*</span> | |
| 105 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(1)">水枪水嘴照片</a> | |
| 106 | - <br/> | |
| 107 | - <el-image v-for="item in slides[1]" | |
| 108 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 109 | - :src="item.url" | |
| 110 | - :preview-src-list="[item.url]" | |
| 111 | - :z-index="2000"> | |
| 112 | - </el-image> | |
| 113 | - <el-input v-model="form.sub_img1" type="hidden"></el-input> | |
| 114 | - <p v-for="img in form.sub_img1">{{ img.split(":")[0] }}<a @click="removeImage(1,img)" style="color:red"> | |
| 115 | - x</a> | |
| 116 | - </p> | |
| 117 | - </el-col> | |
| 118 | - <el-col :span="6"> | |
| 119 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(2)">照明照片</a> | |
| 120 | - <br/> | |
| 121 | - <el-image v-for="item in slides[2]" | |
| 122 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 123 | - :src="item.url" | |
| 124 | - :preview-src-list="[item.url]" | |
| 125 | - :z-index="2000"> | |
| 126 | - </el-image> | |
| 127 | - <el-input v-model="form.sub_img2" type="hidden"></el-input> | |
| 128 | - <p v-for="img in form.sub_img2">{{ img.split(":")[0] }}<a @click="removeImage(2,img)" style="color:red"> | |
| 129 | - x</a> | |
| 130 | - </p> | |
| 131 | - </el-col> | |
| 104 | + <span style="color: red;" >*</span> | |
| 105 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(1)">水枪水嘴照片</a> | |
| 106 | + <br/> | |
| 107 | + <el-image v-for="item in slides[1]" | |
| 108 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 109 | + :src="item.url" | |
| 110 | + :preview-src-list="[item.url]" | |
| 111 | + :z-index="2000"> | |
| 112 | + </el-image> | |
| 113 | + <el-input v-model="form.sub_img1" type="hidden"></el-input> | |
| 114 | + <p v-for="img in form.sub_img1">{{ img.split(":")[0] }}<a @click="removeImage(1,img)" style="color:red"> | |
| 115 | + x</a> | |
| 116 | + </p> | |
| 117 | + </el-col> | |
| 132 | 118 | <el-col :span="6"> |
| 133 | - <span style="color: red;" >*</span> | |
| 134 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(3)">视频监控照片</a> | |
| 135 | - <br/> | |
| 136 | - <el-image v-for="item in slides[3]" | |
| 137 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 138 | - :src="item.url" | |
| 139 | - :preview-src-list="[item.url]" | |
| 140 | - :z-index="2000"> | |
| 141 | - </el-image> | |
| 142 | - <el-input v-model="form.sub_img3" type="hidden"></el-input> | |
| 143 | - <p v-for="img in form.sub_img3">{{ img.split(":")[0] }}<a @click="removeImage(3,img)" style="color:red"> | |
| 144 | - x</a> | |
| 145 | - </p> | |
| 146 | - </el-col> | |
| 147 | - </el-row> | |
| 148 | - <el-row type="flex" justify="center"> | |
| 119 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(2)">照明照片</a> | |
| 120 | + <br/> | |
| 121 | + <el-image v-for="item in slides[2]" | |
| 122 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 123 | + :src="item.url" | |
| 124 | + :preview-src-list="[item.url]" | |
| 125 | + :z-index="2000"> | |
| 126 | + </el-image> | |
| 127 | + <el-input v-model="form.sub_img2" type="hidden"></el-input> | |
| 128 | + <p v-for="img in form.sub_img2">{{ img.split(":")[0] }}<a @click="removeImage(2,img)" style="color:red"> | |
| 129 | + x</a> | |
| 130 | + </p> | |
| 131 | + </el-col> | |
| 149 | 132 | <el-col :span="6"> |
| 150 | - <span style="color: red;" >*</span> | |
| 151 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(4)">洗车机照片</a> | |
| 152 | - <br/> | |
| 153 | - <el-image v-for="item in slides[4]" | |
| 154 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 155 | - :src="item.url" | |
| 156 | - :preview-src-list="[item.url]" | |
| 157 | - :z-index="2000"> | |
| 158 | - </el-image> | |
| 159 | - <el-input v-model="form.sub_img4" type="hidden"></el-input> | |
| 160 | - <p v-for="img in form.sub_img4">{{ img.split(":")[0] }}<a @click="removeImage(4,img)" style="color:red"> | |
| 161 | - x</a> | |
| 162 | - </p> | |
| 163 | - </el-col> | |
| 133 | + <span style="color: red;" >*</span> | |
| 134 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(3)">视频监控照片</a> | |
| 135 | + <br/> | |
| 136 | + <el-image v-for="item in slides[3]" | |
| 137 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 138 | + :src="item.url" | |
| 139 | + :preview-src-list="[item.url]" | |
| 140 | + :z-index="2000"> | |
| 141 | + </el-image> | |
| 142 | + <el-input v-model="form.sub_img3" type="hidden"></el-input> | |
| 143 | + <p v-for="img in form.sub_img3">{{ img.split(":")[0] }}<a @click="removeImage(3,img)" style="color:red"> | |
| 144 | + x</a> | |
| 145 | + </p> | |
| 146 | + </el-col> | |
| 147 | + </el-row> | |
| 148 | + <el-row type="flex" justify="center"> | |
| 164 | 149 | <el-col :span="6"> |
| 165 | - <span style="color: red;" >*</span> | |
| 166 | - <a style="color:blue;font-size: 12px;" | |
| 167 | - @click="showFileUpload(5)">{{ form.type == 0 ? "摄像头视频截图1" : "洗车设施照片" }}</a> | |
| 168 | - <br/> | |
| 169 | - <el-image v-for="item in slides[5]" | |
| 170 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 171 | - :src="item.url" | |
| 172 | - :preview-src-list="[item.url]" | |
| 173 | - :z-index="2000"> | |
| 174 | - </el-image> | |
| 175 | - <el-input v-model="form.sub_img5" type="hidden"></el-input> | |
| 176 | - <p v-for="img in form.sub_img5">{{ img.split(":")[0] }}<a @click="removeImage(5,img)" style="color:red"> | |
| 177 | - x</a> | |
| 178 | - </p> | |
| 179 | - </el-col> | |
| 150 | + <span style="color: red;" >*</span> | |
| 151 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(4)">洗车机照片</a> | |
| 152 | + <br/> | |
| 153 | + <el-image v-for="item in slides[4]" | |
| 154 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 155 | + :src="item.url" | |
| 156 | + :preview-src-list="[item.url]" | |
| 157 | + :z-index="2000"> | |
| 158 | + </el-image> | |
| 159 | + <el-input v-model="form.sub_img4" type="hidden"></el-input> | |
| 160 | + <p v-for="img in form.sub_img4">{{ img.split(":")[0] }}<a @click="removeImage(4,img)" style="color:red"> | |
| 161 | + x</a> | |
| 162 | + </p> | |
| 163 | + </el-col> | |
| 180 | 164 | <el-col :span="6"> |
| 181 | - <span style="color: red;" v-if="form.type == 0">*</span> | |
| 182 | - <a style="color:blue;font-size: 12px;" | |
| 183 | - @click="showFileUpload(6)">{{ form.type == 0 ? "摄像头视频截图2" : "雾炮机" }}</a> | |
| 184 | - <br/> | |
| 185 | - <el-image v-for="item in slides[6]" | |
| 186 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 187 | - :src="item.url" | |
| 188 | - :preview-src-list="[item.url]" | |
| 189 | - :z-index="2000"> | |
| 190 | - </el-image> | |
| 191 | - <el-input v-model="form.sub_img6" type="hidden"></el-input> | |
| 192 | - <p v-for="img in form.sub_img6">{{ img.split(":")[0] }}<a @click="removeImage(6,img)" style="color:red"> | |
| 193 | - x</a> | |
| 194 | - </p> | |
| 195 | - </el-col> | |
| 165 | + <span style="color: red;" >*</span> | |
| 166 | + <a style="color:blue;font-size: 12px;" | |
| 167 | + @click="showFileUpload(5)">{{ form.type == 0 ? "摄像头视频截图1" : "洗车设施照片" }}</a> | |
| 168 | + <br/> | |
| 169 | + <el-image v-for="item in slides[5]" | |
| 170 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 171 | + :src="item.url" | |
| 172 | + :preview-src-list="[item.url]" | |
| 173 | + :z-index="2000"> | |
| 174 | + </el-image> | |
| 175 | + <el-input v-model="form.sub_img5" type="hidden"></el-input> | |
| 176 | + <p v-for="img in form.sub_img5">{{ img.split(":")[0] }}<a @click="removeImage(5,img)" style="color:red"> | |
| 177 | + x</a> | |
| 178 | + </p> | |
| 179 | + </el-col> | |
| 196 | 180 | <el-col :span="6"> |
| 197 | - <span style="color: red;" >*</span> | |
| 198 | - <a style="color:blue;font-size: 12px;" | |
| 199 | - @click="showFileUpload(7)">{{ form.type == 0 ? "摄像头视频截图3" : "裸露黄土覆盖照片" }}</a> | |
| 200 | - <br/> | |
| 201 | - <el-image v-for="item in slides[7]" | |
| 202 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 203 | - :src="item.url" | |
| 204 | - :preview-src-list="[item.url]" | |
| 205 | - :z-index="2000"> | |
| 206 | - </el-image> | |
| 207 | - <el-input v-model="form.sub_img7" type="hidden"></el-input> | |
| 208 | - <p v-for="img in form.sub_img7">{{ img.split(":")[0] }}<a @click="removeImage(7,img)" style="color:red"> | |
| 209 | - x</a> | |
| 210 | - </p> | |
| 211 | - </el-col> | |
| 212 | - </el-row> | |
| 213 | - <el-row type="flex" justify="center"> | |
| 214 | - <el-col :span="5"> | |
| 215 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(8)">其他1</a> | |
| 216 | - <br/> | |
| 217 | - <el-image v-for="item in slides[8]" | |
| 218 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 219 | - :src="item.url" | |
| 220 | - :preview-src-list="[item.url]" | |
| 221 | - :z-index="2000"> | |
| 222 | - </el-image> | |
| 223 | - <el-input v-model="form.sub_img8" type="hidden"></el-input> | |
| 224 | - <p v-for="img in form.sub_img8">{{ img.split(":")[0] }}<a @click="removeImage(8,img)" style="color:red"> | |
| 225 | - x</a> | |
| 226 | - </p> | |
| 227 | - </el-col> | |
| 228 | - <el-col :span="5"> | |
| 229 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(9)">其他2</a> | |
| 230 | - <br/> | |
| 231 | - <el-image v-for="item in slides[9]" | |
| 232 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 233 | - :src="item.url" | |
| 234 | - :preview-src-list="[item.url]" | |
| 235 | - :z-index="2000"> | |
| 236 | - </el-image> | |
| 237 | - <el-input v-model="form.sub_img9" type="hidden"></el-input> | |
| 238 | - <p v-for="img in form.sub_img9">{{ img.split(":")[0] }}<a @click="removeImage(9,img)" style="color:red"> | |
| 239 | - x</a> | |
| 240 | - </p> | |
| 241 | - </el-col> | |
| 242 | - <el-col :span="5"> | |
| 243 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(10)">其他3</a> | |
| 244 | - <br/> | |
| 245 | - <el-image v-for="item in slides[10]" | |
| 246 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 247 | - :src="item.url" | |
| 248 | - :preview-src-list="[item.url]" | |
| 249 | - :z-index="2000"> | |
| 250 | - </el-image> | |
| 251 | - <el-input v-model="form.sub_img10" type="hidden"></el-input> | |
| 252 | - <p v-for="img in form.sub_img10">{{ img.split(":")[0] }}<a @click="removeImage(10,img)" style="color:red"> | |
| 253 | - x</a> | |
| 254 | - </p> | |
| 255 | - </el-col> | |
| 256 | - <el-col :span="5"> | |
| 257 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(11)">其他4</a> | |
| 258 | - <br/> | |
| 259 | - <el-image v-for="item in slides[11]" | |
| 260 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 261 | - :src="item.url" | |
| 262 | - :preview-src-list="[item.url]" | |
| 263 | - :z-index="2000"> | |
| 264 | - </el-image> | |
| 265 | - <el-input v-model="form.sub_img11" type="hidden"></el-input> | |
| 266 | - <p v-for="img in form.sub_img11">{{ img.split(":")[0] }}<a @click="removeImage(11,img)" style="color:red"> | |
| 267 | - x</a> | |
| 268 | - </p> | |
| 269 | - </el-col> | |
| 270 | - <el-col :span="4"> | |
| 271 | - <a style="color:blue;font-size: 12px;" @click="showFileUpload(12)">其他5</a> | |
| 272 | - <br/> | |
| 273 | - <el-image v-for="item in slides[12]" | |
| 274 | - style="width: 100px; height: 100px; margin: 5px;" | |
| 275 | - :src="item.url" | |
| 276 | - :preview-src-list="[item.url]" | |
| 277 | - :z-index="2000"> | |
| 278 | - </el-image> | |
| 279 | - <el-input v-model="form.sub_img12" type="hidden"></el-input> | |
| 280 | - <p v-for="img in form.sub_img12">{{ img.split(":")[0] }}<a @click="removeImage(12,img)" style="color:red"> | |
| 281 | - x</a> | |
| 282 | - </p> | |
| 283 | - </el-col> | |
| 284 | - </el-row> | |
| 285 | - </el-form> | |
| 286 | - | |
| 287 | - | |
| 288 | - <div slot="footer" class="dialog-footer"> | |
| 289 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 290 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 291 | - </div> | |
| 292 | - </el-dialog> | |
| 293 | - | |
| 294 | - | |
| 295 | - <el-dialog title="附件" :visible.sync="uploadImageDialog" append-to-body :beforeClose="handleClose"> | |
| 296 | - <el-upload multiple :headers="upload.headers" :action="upload.url" :file-list="fileList" | |
| 297 | - :on-success="uploadSuccess" :before-upload="beforeUpload"> | |
| 298 | - <el-button size="small" type="primary">选择附件</el-button> | |
| 299 | - <div slot="tip" class="el-upload__tip">只能上传不超过 20MB 的jpg pdf word png文件</div> | |
| 300 | - </el-upload> | |
| 301 | - <div style="height: 40px;width:100%;"> | |
| 302 | - <el-button type="primary" style="margin-top: 20px;float:right;" @click="handleClose">关闭</el-button> | |
| 303 | - </div> | |
| 304 | - </el-dialog> | |
| 305 | - | |
| 306 | - <el-dialog title="示意图" :visible.sync="picSample" append-to-body> | |
| 307 | - <img src="../../../assets/logo/logo.jpg" width="100%" height="800px"/> | |
| 308 | - </el-dialog> | |
| 309 | - | |
| 310 | - <!-- 会议管理 --> | |
| 311 | - <el-dialog :title="title" :visible.sync="conferenceOpen" width="850px" append-to-body :close-on-click-modal="false"> | |
| 181 | + <span style="color: red;" v-if="form.type == 0">*</span> | |
| 182 | + <a style="color:blue;font-size: 12px;" | |
| 183 | + @click="showFileUpload(6)">{{ form.type == 0 ? "摄像头视频截图2" : "雾炮机" }}</a> | |
| 184 | + <br/> | |
| 185 | + <el-image v-for="item in slides[6]" | |
| 186 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 187 | + :src="item.url" | |
| 188 | + :preview-src-list="[item.url]" | |
| 189 | + :z-index="2000"> | |
| 190 | + </el-image> | |
| 191 | + <el-input v-model="form.sub_img6" type="hidden"></el-input> | |
| 192 | + <p v-for="img in form.sub_img6">{{ img.split(":")[0] }}<a @click="removeImage(6,img)" style="color:red"> | |
| 193 | + x</a> | |
| 194 | + </p> | |
| 195 | + </el-col> | |
| 196 | + <el-col :span="6"> | |
| 197 | + <span style="color: red;" >*</span> | |
| 198 | + <a style="color:blue;font-size: 12px;" | |
| 199 | + @click="showFileUpload(7)">{{ form.type == 0 ? "摄像头视频截图3" : "裸露黄土覆盖照片" }}</a> | |
| 200 | + <br/> | |
| 201 | + <el-image v-for="item in slides[7]" | |
| 202 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 203 | + :src="item.url" | |
| 204 | + :preview-src-list="[item.url]" | |
| 205 | + :z-index="2000"> | |
| 206 | + </el-image> | |
| 207 | + <el-input v-model="form.sub_img7" type="hidden"></el-input> | |
| 208 | + <p v-for="img in form.sub_img7">{{ img.split(":")[0] }}<a @click="removeImage(7,img)" style="color:red"> | |
| 209 | + x</a> | |
| 210 | + </p> | |
| 211 | + </el-col> | |
| 212 | + </el-row> | |
| 213 | + <el-row type="flex" justify="center"> | |
| 214 | + <el-col :span="5"> | |
| 215 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(8)">其他1</a> | |
| 216 | + <br/> | |
| 217 | + <el-image v-for="item in slides[8]" | |
| 218 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 219 | + :src="item.url" | |
| 220 | + :preview-src-list="[item.url]" | |
| 221 | + :z-index="2000"> | |
| 222 | + </el-image> | |
| 223 | + <el-input v-model="form.sub_img8" type="hidden"></el-input> | |
| 224 | + <p v-for="img in form.sub_img8">{{ img.split(":")[0] }}<a @click="removeImage(8,img)" style="color:red"> | |
| 225 | + x</a> | |
| 226 | + </p> | |
| 227 | + </el-col> | |
| 228 | + <el-col :span="5"> | |
| 229 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(9)">其他2</a> | |
| 230 | + <br/> | |
| 231 | + <el-image v-for="item in slides[9]" | |
| 232 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 233 | + :src="item.url" | |
| 234 | + :preview-src-list="[item.url]" | |
| 235 | + :z-index="2000"> | |
| 236 | + </el-image> | |
| 237 | + <el-input v-model="form.sub_img9" type="hidden"></el-input> | |
| 238 | + <p v-for="img in form.sub_img9">{{ img.split(":")[0] }}<a @click="removeImage(9,img)" style="color:red"> | |
| 239 | + x</a> | |
| 240 | + </p> | |
| 241 | + </el-col> | |
| 242 | + <el-col :span="5"> | |
| 243 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(10)">其他3</a> | |
| 244 | + <br/> | |
| 245 | + <el-image v-for="item in slides[10]" | |
| 246 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 247 | + :src="item.url" | |
| 248 | + :preview-src-list="[item.url]" | |
| 249 | + :z-index="2000"> | |
| 250 | + </el-image> | |
| 251 | + <el-input v-model="form.sub_img10" type="hidden"></el-input> | |
| 252 | + <p v-for="img in form.sub_img10">{{ img.split(":")[0] }}<a @click="removeImage(10,img)" style="color:red"> | |
| 253 | + x</a> | |
| 254 | + </p> | |
| 255 | + </el-col> | |
| 256 | + <el-col :span="5"> | |
| 257 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(11)">其他4</a> | |
| 258 | + <br/> | |
| 259 | + <el-image v-for="item in slides[11]" | |
| 260 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 261 | + :src="item.url" | |
| 262 | + :preview-src-list="[item.url]" | |
| 263 | + :z-index="2000"> | |
| 264 | + </el-image> | |
| 265 | + <el-input v-model="form.sub_img11" type="hidden"></el-input> | |
| 266 | + <p v-for="img in form.sub_img11">{{ img.split(":")[0] }}<a @click="removeImage(11,img)" style="color:red"> | |
| 267 | + x</a> | |
| 268 | + </p> | |
| 269 | + </el-col> | |
| 270 | + <el-col :span="4"> | |
| 271 | + <a style="color:blue;font-size: 12px;" @click="showFileUpload(12)">其他5</a> | |
| 272 | + <br/> | |
| 273 | + <el-image v-for="item in slides[12]" | |
| 274 | + style="width: 100px; height: 100px; margin: 5px;" | |
| 275 | + :src="item.url" | |
| 276 | + :preview-src-list="[item.url]" | |
| 277 | + :z-index="2000"> | |
| 278 | + </el-image> | |
| 279 | + <el-input v-model="form.sub_img12" type="hidden"></el-input> | |
| 280 | + <p v-for="img in form.sub_img12">{{ img.split(":")[0] }}<a @click="removeImage(12,img)" style="color:red"> | |
| 281 | + x</a> | |
| 282 | + </p> | |
| 283 | + </el-col> | |
| 284 | + </el-row> | |
| 285 | + </el-form> | |
| 286 | + | |
| 287 | + | |
| 288 | + <div slot="footer" class="dialog-footer"> | |
| 289 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 290 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 291 | + </div> | |
| 292 | + </el-dialog> | |
| 293 | + | |
| 294 | + | |
| 295 | + <el-dialog title="附件" :visible.sync="uploadImageDialog" append-to-body :beforeClose="handleClose"> | |
| 296 | + <el-upload multiple :headers="upload.headers" :action="upload.url" :file-list="fileList" | |
| 297 | + :on-success="uploadSuccess" :before-upload="beforeUpload"> | |
| 298 | + <el-button size="small" type="primary">选择附件</el-button> | |
| 299 | + <div slot="tip" class="el-upload__tip">只能上传不超过 20MB 的jpg pdf word png文件</div> | |
| 300 | + </el-upload> | |
| 301 | + <div style="height: 40px;width:100%;"> | |
| 302 | + <el-button type="primary" style="margin-top: 20px;float:right;" @click="handleClose">关闭</el-button> | |
| 303 | + </div> | |
| 304 | + </el-dialog> | |
| 305 | + | |
| 306 | + <el-dialog title="示意图" :visible.sync="picSample" append-to-body> | |
| 307 | + <img src="../../../assets/logo/logo.jpg" width="100%" height="800px"/> | |
| 308 | + </el-dialog> | |
| 309 | + | |
| 310 | + <!-- 会议管理 --> | |
| 311 | + <el-dialog :title="title" :visible.sync="conferenceOpen" width="850px" append-to-body :close-on-click-modal="false"> | |
| 312 | 312 | <conferenceInfo :idInfo="idInfo" v-if="conferenceOpen"/> |
| 313 | - | |
| 314 | - | |
| 315 | - <div slot="footer" class="dialog-footer"> | |
| 316 | - <el-button type="danger" @click="conferenceSubmitForm(1)">驳回</el-button> | |
| 317 | - <el-button type="primary" @click="conferenceSubmitForm(0)">通过</el-button> | |
| 318 | - </div> | |
| 319 | - </el-dialog> | |
| 320 | - | |
| 321 | - <!-- 请假申请 --> | |
| 322 | - <el-dialog :title="title" :visible.sync="leaveApplicationOpen" width="500px" append-to-body | |
| 323 | - :close-on-click-modal="false"> | |
| 324 | - <leaveApplicationInfo :idInfo="idInfo" v-if="leaveApplicationOpen"/> | |
| 325 | - <div slot="footer" class="dialog-footer"> | |
| 326 | - <el-button type="danger" @click="leaveApplicationSubmitForm(1)">驳回</el-button> | |
| 327 | - <el-button type="primary" @click="leaveApplicationSubmitForm(0)">通过</el-button> | |
| 328 | - </div> | |
| 329 | - </el-dialog> | |
| 330 | - | |
| 331 | - | |
| 332 | - <el-dialog :title="title" :visible.sync="construct" width="1500px" append-to-body> | |
| 333 | - <companyInfo :businessKey="businessKey" :businessType="2" :signData="signData" v-if="construct"/> | |
| 334 | - <div v-for="item in this.form.formData"> | |
| 335 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 336 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 337 | - </div> | |
| 338 | - | |
| 339 | - | |
| 340 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 341 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 342 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 343 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 344 | - </el-table> | |
| 345 | - <div slot="footer" class="dialog-footer"> | |
| 346 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 347 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 348 | - </div> | |
| 349 | - </el-dialog> | |
| 350 | - | |
| 351 | - <el-dialog :title="title" :visible.sync="earthsites" width="1500px" append-to-body> | |
| 352 | - <companyInfo :businessKey="businessKey" :businessType="3" v-if="earthsites"/> | |
| 353 | - <div v-for="item in this.form.formData"> | |
| 354 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 355 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 356 | - </div> | |
| 357 | - | |
| 358 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 359 | - | |
| 360 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 361 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 362 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 363 | - </el-table> | |
| 364 | - | |
| 365 | - <div slot="footer" class="dialog-footer"> | |
| 366 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 367 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 368 | - </div> | |
| 369 | - </el-dialog> | |
| 370 | - | |
| 371 | - <el-dialog :title="title" :visible.sync="contract" width="1500px" append-to-body> | |
| 372 | - <companyInfo :businessKey="businessKey" :businessType="4" v-if="contract"/> | |
| 373 | - | |
| 374 | - <div v-for="item in this.form.formData"> | |
| 375 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 376 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 377 | - </div> | |
| 378 | - | |
| 379 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 380 | - | |
| 381 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 382 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 383 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 384 | - </el-table> | |
| 385 | - | |
| 386 | - <div slot="footer" class="dialog-footer"> | |
| 387 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 388 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 389 | - </div> | |
| 390 | - </el-dialog> | |
| 391 | - | |
| 392 | - <!-- 后勤管理 --> | |
| 393 | - <el-dialog :title="title" :visible.sync="logisticsInfoOpen" width="500px" append-to-body | |
| 394 | - :close-on-click-modal="false"> | |
| 395 | - <logisticsInfo :idInfo="idInfo" v-if="logisticsInfoOpen"/> | |
| 396 | - <div slot="footer" class="dialog-footer"> | |
| 397 | - <el-button type="danger" @click="logisticsInfoSubmitForm(1)">驳回</el-button> | |
| 398 | - <el-button type="primary" @click="logisticsInfoSubmitForm(0)">通过</el-button> | |
| 399 | - </div> | |
| 400 | - </el-dialog> | |
| 401 | - | |
| 402 | - <!-- 办文办事 --> | |
| 403 | - <el-dialog :title="title" :visible.sync="handleAffairsInfoOpen" width="600px" append-to-body | |
| 404 | - :close-on-click-modal="false"> | |
| 405 | - <handleInfo ref="handleAffairsInfoRef" :idInfo="idInfo" v-if="handleAffairsInfoOpen" | |
| 406 | - :businessKey="definitionKey" | |
| 407 | - :controlId="controlId"/> | |
| 408 | - <el-form label-width="110px" v-if="definitionKey=='yuelan'"> | |
| 409 | - <el-form-item label="阅览部门:"> | |
| 410 | - <el-select ref="formDeptNameRef" v-model="deptName" placeholder="请选择部门" style="width: 100% " | |
| 411 | - @change="changeDepts"> | |
| 412 | - <el-option v-for="item in depts" :label="item.name" :value="item.code" :key="item.code"/> | |
| 413 | - </el-select> | |
| 414 | - </el-form-item> | |
| 415 | - <el-form-item label="阅览人:"> | |
| 416 | - <treeselect v-model="users" :multiple="true" :options="options" placeholder="请选择" @select="handleSelect"/> | |
| 417 | - </el-form-item> | |
| 418 | - </el-form> | |
| 419 | - <div v-for="item in this.form.formData"> | |
| 420 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 421 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 422 | - </div> | |
| 423 | - | |
| 424 | - | |
| 425 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 426 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 427 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 428 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 429 | - </el-table> | |
| 430 | - | |
| 431 | - <div slot="footer" class="dialog-footer"> | |
| 432 | - <div slot="footer" class="dialog-footer"> | |
| 433 | - <el-button type="danger" @click="handleAffairsSubmitForm(1)" | |
| 434 | - v-if="controlId!='FormProperty_11p96vq' && controlId!='FormProperty_0d6ngk1' && definitionKey!='yuelanxuexi' && definitionKey!='yuelan'"> | |
| 435 | - 驳回 | |
| 436 | - </el-button> | |
| 437 | - <el-button type="primary" @click="handleAffairsSubmitForm(0)">通过</el-button> | |
| 438 | - </div> | |
| 439 | - </div> | |
| 440 | - </el-dialog> | |
| 441 | - | |
| 442 | - <!-- 线下案卷交办 --> | |
| 443 | - <el-dialog :title="title" :visible.sync="caseOffline" width="600px" append-to-body :close-on-click-modal="false"> | |
| 444 | - <caseOfflineInfo :businessKey="businessKey" v-if="caseOffline"/> | |
| 445 | - <el-form v-if="caseOffline" label-width="120px"> | |
| 446 | - <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 447 | - </el-input> | |
| 448 | - <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 449 | - accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 450 | - :show-file-list="false" | |
| 451 | - :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 452 | - <el-button size="small" type="primary">选择附件</el-button> | |
| 453 | - <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 454 | - </el-upload> | |
| 455 | - <el-image v-for="item in slides1" | |
| 456 | - style="width: 150px; height: 100px; margin: 5px;" | |
| 457 | - :src="item.url" | |
| 458 | - :preview-src-list="[item.url]" | |
| 459 | - :z-index="2000"> | |
| 460 | - </el-image> | |
| 461 | - <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 462 | - v-for="item in videoSrc1"> | |
| 463 | - <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 464 | - </div> | |
| 465 | - <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 466 | - @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 467 | - | |
| 468 | - </el-form> | |
| 469 | - <div slot="footer" class="dialog-footer"> | |
| 470 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 471 | - v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 472 | - </el-button> | |
| 473 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 474 | - </div> | |
| 475 | - </el-dialog> | |
| 476 | - | |
| 477 | - <!-- 平台违规信息 --> | |
| 478 | - <el-dialog :title="title" :visible.sync="violationCaseFile" width="850px" append-to-body | |
| 479 | - :close-on-click-modal="false"> | |
| 480 | - <violationCaseFileInfo :idInfo="businessKey" v-if="violationCaseFile" :entryType="0"/> | |
| 481 | - <el-form v-if="violationCaseFile" label-width="120px"> | |
| 482 | - <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 483 | - </el-input> | |
| 484 | - <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 485 | - accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 486 | - :show-file-list="false" | |
| 487 | - :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 488 | - <el-button size="small" type="primary">选择附件</el-button> | |
| 489 | - <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 490 | - </el-upload> | |
| 491 | - <el-image v-for="item in slides1" | |
| 492 | - style="width: 150px; height: 100px; margin: 5px;" | |
| 493 | - :src="item.url" | |
| 494 | - :preview-src-list="[item.url]" | |
| 495 | - :z-index="2000"> | |
| 496 | - </el-image> | |
| 497 | - <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 498 | - v-for="item in videoSrc1"> | |
| 499 | - <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 500 | - </div> | |
| 501 | - <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 502 | - @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 503 | - | |
| 504 | - </el-form> | |
| 505 | - | |
| 506 | - | |
| 507 | - <div slot="footer" class="dialog-footer"> | |
| 508 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 509 | - v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 510 | - </el-button> | |
| 511 | - <el-button type="primary" | |
| 512 | - | |
| 513 | - v-loading.fullscreen.lock="modalLoading" | |
| 514 | - @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 515 | - </div> | |
| 516 | - </el-dialog> | |
| 517 | - | |
| 518 | - <!-- 违规预警信息 --> | |
| 519 | - <el-dialog :title="title" :visible.sync="violationCaseFile1" width="850px" append-to-body | |
| 520 | - :close-on-click-modal="false"> | |
| 521 | - <violationWarningInformationInfo :idInfo="businessKey" v-if="violationCaseFile1" :entryType="0"/> | |
| 522 | - <el-form v-if="violationCaseFile1" label-width="120px"> | |
| 523 | - <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 524 | - </el-input> | |
| 525 | - <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 526 | - accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 527 | - :show-file-list="false" | |
| 528 | - :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 529 | - <el-button size="small" type="primary">选择附件</el-button> | |
| 530 | - <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 531 | - </el-upload> | |
| 532 | - <el-image v-for="item in slides1" | |
| 533 | - style="width: 150px; height: 100px; margin: 5px;" | |
| 534 | - :src="item.url" | |
| 535 | - :preview-src-list="[item.url]" | |
| 536 | - :z-index="2000"> | |
| 537 | - </el-image> | |
| 538 | - <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 539 | - v-for="item in videoSrc1"> | |
| 540 | - <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 541 | - </div> | |
| 542 | - <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 543 | - @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 544 | - </el-form> | |
| 545 | - | |
| 546 | - | |
| 547 | - <div slot="footer" class="dialog-footer"> | |
| 548 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 549 | - v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 550 | - </el-button> | |
| 551 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 552 | - </div> | |
| 553 | - </el-dialog> | |
| 554 | - | |
| 555 | - <el-dialog :title="title" :visible.sync="supervisionOpen" width="700px" append-to-body | |
| 556 | - :close-on-click-modal="false"> | |
| 557 | - <supervisionInfo :infoData="supervisionData" v-if="supervisionOpen"/> | |
| 558 | - | |
| 559 | - <div v-for="item in this.form.formData"> | |
| 560 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 561 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 562 | - </div> | |
| 563 | - | |
| 564 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 565 | - | |
| 566 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 567 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 568 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 569 | - </el-table> | |
| 570 | - | |
| 571 | - <div slot="footer" class="dialog-footer"> | |
| 572 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 573 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 574 | - </div> | |
| 575 | - </el-dialog> | |
| 576 | - | |
| 577 | - <el-dialog :title="title" :visible.sync="company" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 578 | - <companyInfo :businessKey="businessKey" :businessType="0" v-if="company"/> | |
| 579 | - <div v-for="item in this.form.formData"> | |
| 580 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 581 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 582 | - </div> | |
| 583 | - | |
| 584 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 585 | - | |
| 586 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 587 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 588 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 589 | - </el-table> | |
| 590 | - <div slot="footer" class="dialog-footer"> | |
| 591 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 592 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 593 | - </div> | |
| 594 | - </el-dialog> | |
| 595 | - | |
| 596 | - <el-dialog :title="title" :visible.sync="vehicle" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 597 | - <companyInfo :businessKey="businessKey" :businessType="1" v-if="vehicle"/> | |
| 598 | - <div v-for="item in this.form.formData"> | |
| 599 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 600 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 601 | - </div> | |
| 602 | - | |
| 603 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 604 | - | |
| 605 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 606 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 607 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 608 | - </el-table> | |
| 609 | - <div slot="footer" class="dialog-footer"> | |
| 610 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 611 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 612 | - </div> | |
| 613 | - </el-dialog> | |
| 614 | - | |
| 615 | - <el-dialog :title="title" :visible.sync="driver" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 616 | - <companyInfo :businessKey="businessKey" :businessType="5" v-if="driver"/> | |
| 617 | - <div v-for="item in this.form.formData"> | |
| 618 | - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 619 | - placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 620 | - </div> | |
| 621 | - | |
| 622 | - <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 623 | - | |
| 624 | - <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 625 | - <el-table-column label="处理人" align="center" prop="createName"/> | |
| 626 | - <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 627 | - </el-table> | |
| 628 | - <div slot="footer" class="dialog-footer"> | |
| 629 | - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 630 | - <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 631 | - </div> | |
| 632 | - </el-dialog> | |
| 633 | - | |
| 634 | - </div> | |
| 635 | -</template> | |
| 636 | - | |
| 637 | -<style> | |
| 638 | -@import '../../../assets/css/task.css'; | |
| 639 | -</style> | |
| 640 | - | |
| 641 | -<script> | |
| 642 | - import {formDataSave, formDataShow, listTask,getNames} from "@/api/activiti/task"; | |
| 643 | - import {historyFromData} from '@/api/activiti/historyFormdata' | |
| 644 | - import {addSign, getSignByObjId} from "@/api/sign/sign"; | |
| 645 | - import {updateCaseOffline} from "@/api/caseOffline/caseOffline"; | |
| 646 | - import {updateViolationCaseFileReader} from "@/api/casefile/violationCaseFile"; | |
| 647 | - import {updateViolationCaseFileReader1} from "@/api/casefile/violationWarningInformation"; | |
| 648 | - import {getDict, getSupervision, getUsers} from "@/api/dict"; | |
| 649 | - import {activeThreestep} from "@/api/business/threestep"; | |
| 650 | - import {getToken} from "@/utils/auth"; | |
| 651 | - import {addReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess"; | |
| 652 | - import {updateHandleAffairs} from "@/api/office/handle"; | |
| 653 | - import Treeselect from "@riophae/vue-treeselect"; | |
| 654 | - import '@riophae/vue-treeselect/dist/vue-treeselect.css' | |
| 655 | - import leaveHistoryForm from "@/views/workflow/leaveHistoryForm"; | |
| 656 | - import threestepInfo from "@/views/business/threestep/threestepInfo"; | |
| 657 | - import taskCard from "@/views/activiti/task/taskCard"; | |
| 658 | - import conferenceInfo from "@/views/office/conference/conferenceInfo"; | |
| 659 | - import leaveApplicationInfo from "@/views/office/leaveApplication/leaveApplicationInfo"; | |
| 660 | - import constructsiteInfo from "@/views/activiti/task/constructsiteInfo"; | |
| 661 | - import earthsitesInfo from "@/views/activiti/task/earthsitesInfo"; | |
| 662 | - import contractInfo from "@/views/activiti/task/contractInfo"; | |
| 663 | - import logisticsInfo from "@/views/office/logistics/logisticsInfo"; | |
| 664 | - import handleInfo from "@/views/office/handle/handleInfo"; | |
| 665 | - import caseOfflineInfo from "@/views/caseOffline/caseOffline/caseOfflineInfo"; | |
| 666 | - import violationCaseFileInfo from "@/views/h5/task/violationCaseFileInfo"; | |
| 667 | - import violationWarningInformationInfo from "@/views/h5/task/violationWarningInformationInfo"; | |
| 668 | - import supervisionInfo from "@/views/activiti/task/SupervisionInfo"; | |
| 669 | - import companyInfo from "@/views/activiti/task/companyInfo"; | |
| 670 | - import driverInfo from "@/views/activiti/task/driverInfo"; | |
| 671 | - import vehicleInfo from "@/views/activiti/task/vehicleInfo"; | |
| 672 | - | |
| 673 | - import taskmethod from '@/api/taskmethod' | |
| 674 | - | |
| 675 | - export default { | |
| 676 | - name: "task", | |
| 677 | - mixins: [taskmethod], | |
| 678 | - components: { | |
| 679 | - taskCard, | |
| 680 | - leaveHistoryForm, | |
| 681 | - threestepInfo, | |
| 682 | - conferenceInfo, | |
| 683 | - leaveApplicationInfo, | |
| 684 | - logisticsInfo, | |
| 685 | - handleInfo, | |
| 686 | - constructsiteInfo, | |
| 687 | - Treeselect, | |
| 688 | - earthsitesInfo, | |
| 689 | - contractInfo, | |
| 690 | - caseOfflineInfo, | |
| 691 | - violationCaseFileInfo, | |
| 692 | - violationWarningInformationInfo, | |
| 693 | - supervisionInfo, | |
| 694 | - companyInfo, | |
| 695 | - driverInfo, | |
| 696 | - vehicleInfo | |
| 697 | - }, | |
| 698 | - data() { | |
| 699 | - return { | |
| 700 | - modalLoading:false, | |
| 701 | - id: '', | |
| 702 | - definitionKey: '', | |
| 703 | - businessKey: '', | |
| 704 | - // 遮罩层 | |
| 705 | - loading: true, | |
| 706 | - // 选中数组 | |
| 707 | - ids: [], | |
| 708 | - // 非单个禁用 | |
| 709 | - single: true, | |
| 710 | - // 非多个禁用 | |
| 711 | - multiple: true, | |
| 712 | - // 显示搜索条件 | |
| 713 | - showSearch: true, | |
| 714 | - // 总条数 | |
| 715 | - total: 0, | |
| 716 | - // 请假表格数据 | |
| 717 | - taskList: [], | |
| 718 | - // 弹出层标题 | |
| 719 | - title: "", | |
| 720 | - // 是否显示弹出层 | |
| 721 | - picSample: false, | |
| 722 | - taskName: null, | |
| 723 | - // 查询参数 | |
| 724 | - queryParams: { | |
| 725 | - name:null, | |
| 726 | - pageNum: 1, | |
| 727 | - pageSize: 10, | |
| 728 | - role: null, | |
| 729 | - dept: null, | |
| 730 | - }, | |
| 731 | - // 表单参数 | |
| 732 | - form: { | |
| 733 | - formData: [] | |
| 734 | - }, | |
| 735 | - needShow: false, | |
| 736 | - // 表单校验 | |
| 737 | - rules: { | |
| 738 | - subReason: [{ | |
| 739 | - required: true, | |
| 740 | - message: '请填写补充说明', | |
| 741 | - trigger: 'blur' | |
| 742 | - },], | |
| 743 | - | |
| 744 | - }, | |
| 745 | - picIndex: 0, | |
| 746 | - fileList: [], | |
| 747 | - upload: { | |
| 748 | - // 是否显示弹出层(用户导入) | |
| 749 | - open: false, | |
| 750 | - // 弹出层标题(用户导入) | |
| 751 | - title: "", | |
| 752 | - // 是否禁用上传 | |
| 753 | - isUploading: false, | |
| 754 | - // 设置上传的请求头部 | |
| 755 | - headers: { | |
| 756 | - Authorization: "Bearer " + getToken() | |
| 757 | - }, | |
| 758 | - // 上传的地址 | |
| 759 | - url: process.env.VUE_APP_BASE_API + "/business/threestep/upload", | |
| 760 | - }, | |
| 761 | - controlId: null, | |
| 762 | - users: [], | |
| 763 | - options: [], | |
| 764 | - usersName: [], | |
| 765 | - deptName: null, | |
| 766 | - supervisionData: null, | |
| 767 | - uploadImageDialog: false, | |
| 768 | - idInfo: null, | |
| 769 | - signData: null, | |
| 770 | - areas: [], | |
| 771 | - roles: [], | |
| 772 | - depts: [], | |
| 773 | - signDataInfo: null, | |
| 774 | - earthsites: false, | |
| 775 | - contract: false, | |
| 776 | - logisticsInfoOpen: false, | |
| 777 | - handleAffairsInfoOpen: false, | |
| 778 | - caseOffline: false, | |
| 779 | - violationCaseFile: false, | |
| 780 | - violationCaseFile1: false, | |
| 781 | - supervisionOpen: false, | |
| 782 | - open: false, | |
| 783 | - open2: false, | |
| 784 | - conferenceOpen: false, | |
| 785 | - construct: false, | |
| 786 | - leaveApplicationOpen: false, | |
| 787 | - prev:[], | |
| 788 | - userNodes: [], | |
| 789 | - company: false, | |
| 790 | - driver: false, | |
| 791 | - vehicle: false, | |
| 792 | - names: null, | |
| 793 | - hisfromData: [], | |
| 794 | - slides: [], | |
| 795 | - slidesArys: [], | |
| 796 | - slides1: [], | |
| 797 | - videoSrc1: [], | |
| 798 | - }; | |
| 799 | - }, | |
| 800 | - created() { | |
| 801 | - let dep = {type: "CSUserDepartmentType"}; | |
| 802 | - | |
| 803 | - getDict(dep).then(res => { | |
| 804 | - this.depts = res.result; | |
| 805 | - for(let i in res.result){ | |
| 806 | - if(res.result[i].name.indexOf("渣土办") < 1){ | |
| 807 | - this.prev.push(res.result[i]); | |
| 808 | - } | |
| 809 | - } | |
| 810 | - }); | |
| 811 | - | |
| 812 | - let role = {type: "CSUserPostType"}; | |
| 813 | - | |
| 814 | - getDict(role).then(res => { | |
| 815 | - this.roles = res.result; | |
| 816 | - }); | |
| 817 | - | |
| 818 | - listTask(this.queryParams).then(response => { | |
| 819 | - this.taskList = response.rows; | |
| 820 | - this.names = response.names; | |
| 821 | - this.total = response.total; | |
| 822 | - this.loading = false; | |
| 823 | - }); | |
| 824 | - }, | |
| 825 | - methods: { | |
| 826 | - | |
| 827 | - }, | |
| 828 | - } | |
| 829 | - | |
| 830 | -</script> | |
| 313 | + | |
| 314 | + <div v-for="item in this.form.formData"> | |
| 315 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 316 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 317 | + </div> | |
| 318 | +<!-- <el-table :data="hisfromData" v-if="hisfromData != null">--> | |
| 319 | + | |
| 320 | +<!-- <el-table-column label="处理意见" align="center" prop="controlValue"/>--> | |
| 321 | +<!-- <el-table-column label="处理人" align="center" prop="createName"/>--> | |
| 322 | +<!-- <el-table-column label="处理时间" align="center" prop="createTime"/>--> | |
| 323 | +<!-- </el-table>--> | |
| 324 | + <div slot="footer" class="dialog-footer"> | |
| 325 | + <el-button type="danger" @click="conferenceSubmitForm(1)">驳回</el-button> | |
| 326 | + <el-button type="primary" @click="conferenceSubmitForm(0)">通过</el-button> | |
| 327 | + </div> | |
| 328 | + </el-dialog> | |
| 329 | + | |
| 330 | + <!-- 请假申请 --> | |
| 331 | + <el-dialog :title="title" :visible.sync="leaveApplicationOpen" width="500px" append-to-body | |
| 332 | + :close-on-click-modal="false"> | |
| 333 | + <leaveApplicationInfo :idInfo="idInfo" v-if="leaveApplicationOpen"/> | |
| 334 | + <div v-for="item in this.form.formData"> | |
| 335 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 336 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 337 | + </div> | |
| 338 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 339 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 340 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 341 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 342 | + </el-table> | |
| 343 | + <div slot="footer" class="dialog-footer"> | |
| 344 | + <el-button type="danger" @click="leaveApplicationSubmitForm(1)">驳回</el-button> | |
| 345 | + <el-button type="primary" @click="leaveApplicationSubmitForm(0)">通过</el-button> | |
| 346 | + </div> | |
| 347 | + </el-dialog> | |
| 348 | + | |
| 349 | + | |
| 350 | + <el-dialog :title="title" :visible.sync="construct" width="1500px" append-to-body> | |
| 351 | + <companyInfo :businessKey="businessKey" :businessType="2" :signData="signData" v-if="construct"/> | |
| 352 | + <div v-for="item in this.form.formData"> | |
| 353 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 354 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 355 | + </div> | |
| 356 | + | |
| 357 | + | |
| 358 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 359 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 360 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 361 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 362 | + </el-table> | |
| 363 | + <div slot="footer" class="dialog-footer"> | |
| 364 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 365 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 366 | + </div> | |
| 367 | + </el-dialog> | |
| 368 | + | |
| 369 | + <el-dialog :title="title" :visible.sync="earthsites" width="1500px" append-to-body> | |
| 370 | + <companyInfo :businessKey="businessKey" :businessType="3" v-if="earthsites"/> | |
| 371 | + <div v-for="item in this.form.formData"> | |
| 372 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 373 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 374 | + </div> | |
| 375 | + | |
| 376 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 377 | + | |
| 378 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 379 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 380 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 381 | + </el-table> | |
| 382 | + | |
| 383 | + <div slot="footer" class="dialog-footer"> | |
| 384 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 385 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 386 | + </div> | |
| 387 | + </el-dialog> | |
| 388 | + | |
| 389 | + <el-dialog :title="title" :visible.sync="contract" width="1500px" append-to-body> | |
| 390 | + <companyInfo :businessKey="businessKey" :businessType="4" v-if="contract"/> | |
| 391 | + | |
| 392 | + <div v-for="item in this.form.formData"> | |
| 393 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 394 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 395 | + </div> | |
| 396 | + | |
| 397 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 398 | + | |
| 399 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 400 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 401 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 402 | + </el-table> | |
| 403 | + | |
| 404 | + <div slot="footer" class="dialog-footer"> | |
| 405 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button> | |
| 406 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | |
| 407 | + </div> | |
| 408 | + </el-dialog> | |
| 409 | + | |
| 410 | + <!-- 后勤管理 --> | |
| 411 | + <el-dialog :title="title" :visible.sync="logisticsInfoOpen" width="500px" append-to-body | |
| 412 | + :close-on-click-modal="false"> | |
| 413 | + <logisticsInfo :idInfo="idInfo" v-if="logisticsInfoOpen"/> | |
| 414 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 415 | + <div v-for="item in this.form.formData"> | |
| 416 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 417 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 418 | + </div> | |
| 419 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 420 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 421 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 422 | + </el-table> | |
| 423 | + <div slot="footer" class="dialog-footer"> | |
| 424 | + <el-button type="danger" @click="logisticsInfoSubmitForm(1)">驳回</el-button> | |
| 425 | + <el-button type="primary" @click="logisticsInfoSubmitForm(0)">通过</el-button> | |
| 426 | + </div> | |
| 427 | + </el-dialog> | |
| 428 | + | |
| 429 | + <!-- 办文办事 --> | |
| 430 | + <el-dialog :title="title" :visible.sync="handleAffairsInfoOpen" width="600px" append-to-body | |
| 431 | + :close-on-click-modal="false"> | |
| 432 | + <handleInfo ref="handleAffairsInfoRef" :idInfo="idInfo" v-if="handleAffairsInfoOpen" | |
| 433 | + :businessKey="definitionKey" | |
| 434 | + :controlId="controlId"/> | |
| 435 | + <el-form label-width="110px" v-if="definitionKey=='yuelan'"> | |
| 436 | + <el-form-item label="阅览部门:"> | |
| 437 | + <el-select ref="formDeptNameRef" v-model="deptName" placeholder="请选择部门" style="width: 100% " | |
| 438 | + @change="changeDepts"> | |
| 439 | + <el-option v-for="item in depts" :label="item.name" :value="item.code" :key="item.code"/> | |
| 440 | + </el-select> | |
| 441 | + </el-form-item> | |
| 442 | + <el-form-item label="阅览人:"> | |
| 443 | + <treeselect v-model="users" :multiple="true" :options="options" placeholder="请选择" @select="handleSelect"/> | |
| 444 | + </el-form-item> | |
| 445 | + </el-form> | |
| 446 | + <div v-for="item in this.form.formData"> | |
| 447 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 448 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 449 | + </div> | |
| 450 | + | |
| 451 | + | |
| 452 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 453 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 454 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 455 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 456 | + </el-table> | |
| 457 | + | |
| 458 | + <div slot="footer" class="dialog-footer"> | |
| 459 | + <div slot="footer" class="dialog-footer"> | |
| 460 | + <el-button type="danger" @click="handleAffairsSubmitForm(1)" | |
| 461 | + v-if="controlId!='FormProperty_11p96vq' && controlId!='FormProperty_0d6ngk1' && definitionKey!='yuelanxuexi' && definitionKey!='yuelan'"> | |
| 462 | + 驳回 | |
| 463 | + </el-button> | |
| 464 | + <el-button type="primary" @click="handleAffairsSubmitForm(0)">通过</el-button> | |
| 465 | + </div> | |
| 466 | + </div> | |
| 467 | + </el-dialog> | |
| 468 | + | |
| 469 | + <!-- 线下案卷交办 --> | |
| 470 | + <el-dialog :title="title" :visible.sync="caseOffline" width="600px" append-to-body :close-on-click-modal="false"> | |
| 471 | + <caseOfflineInfo :businessKey="businessKey" v-if="caseOffline"/> | |
| 472 | + <el-form v-if="caseOffline" label-width="120px"> | |
| 473 | + <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 474 | + </el-input> | |
| 475 | + <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 476 | + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 477 | + :show-file-list="false" | |
| 478 | + :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 479 | + <el-button size="small" type="primary">选择附件</el-button> | |
| 480 | + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 481 | + </el-upload> | |
| 482 | + <el-image v-for="item in slides1" | |
| 483 | + style="width: 150px; height: 100px; margin: 5px;" | |
| 484 | + :src="item.url" | |
| 485 | + :preview-src-list="[item.url]" | |
| 486 | + :z-index="2000"> | |
| 487 | + </el-image> | |
| 488 | + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 489 | + v-for="item in videoSrc1"> | |
| 490 | + <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 491 | + </div> | |
| 492 | + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 493 | + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 494 | + | |
| 495 | + </el-form> | |
| 496 | + <div slot="footer" class="dialog-footer"> | |
| 497 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 498 | + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 499 | + </el-button> | |
| 500 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 501 | + </div> | |
| 502 | + </el-dialog> | |
| 503 | + | |
| 504 | + <!-- 平台违规信息 --> | |
| 505 | + <el-dialog :title="title" :visible.sync="violationCaseFile" width="850px" append-to-body | |
| 506 | + :close-on-click-modal="false"> | |
| 507 | + <violationCaseFileInfo :idInfo="businessKey" v-if="violationCaseFile" :entryType="0"/> | |
| 508 | + <el-form v-if="violationCaseFile" label-width="120px"> | |
| 509 | + <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 510 | + </el-input> | |
| 511 | + <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 512 | + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 513 | + :show-file-list="false" | |
| 514 | + :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 515 | + <el-button size="small" type="primary">选择附件</el-button> | |
| 516 | + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 517 | + </el-upload> | |
| 518 | + <el-image v-for="item in slides1" | |
| 519 | + style="width: 150px; height: 100px; margin: 5px;" | |
| 520 | + :src="item.url" | |
| 521 | + :preview-src-list="[item.url]" | |
| 522 | + :z-index="2000"> | |
| 523 | + </el-image> | |
| 524 | + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 525 | + v-for="item in videoSrc1"> | |
| 526 | + <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 527 | + </div> | |
| 528 | + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 529 | + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 530 | + | |
| 531 | + </el-form> | |
| 532 | + | |
| 533 | + | |
| 534 | + <div slot="footer" class="dialog-footer"> | |
| 535 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 536 | + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 537 | + </el-button> | |
| 538 | + <el-button type="primary" | |
| 539 | + | |
| 540 | + v-loading.fullscreen.lock="modalLoading" | |
| 541 | + @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 542 | + </div> | |
| 543 | + </el-dialog> | |
| 544 | + | |
| 545 | + <!-- 违规预警信息 --> | |
| 546 | + <el-dialog :title="title" :visible.sync="violationCaseFile1" width="850px" append-to-body | |
| 547 | + :close-on-click-modal="false"> | |
| 548 | + <violationWarningInformationInfo :idInfo="businessKey" v-if="violationCaseFile1" :entryType="0"/> | |
| 549 | + <el-form v-if="violationCaseFile1" label-width="120px"> | |
| 550 | + <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见"> | |
| 551 | + </el-input> | |
| 552 | + <el-upload multiple :headers="upload.headers" :action="upload.url" | |
| 553 | + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi" | |
| 554 | + :show-file-list="false" | |
| 555 | + :on-success="uploadSuccess1" :before-upload="beforeUpload"> | |
| 556 | + <el-button size="small" type="primary">选择附件</el-button> | |
| 557 | + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div> | |
| 558 | + </el-upload> | |
| 559 | + <el-image v-for="item in slides1" | |
| 560 | + style="width: 150px; height: 100px; margin: 5px;" | |
| 561 | + :src="item.url" | |
| 562 | + :preview-src-list="[item.url]" | |
| 563 | + :z-index="2000"> | |
| 564 | + </el-image> | |
| 565 | + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;" | |
| 566 | + v-for="item in videoSrc1"> | |
| 567 | + <video width="100%" controls="controls" height="100%" :src="item.url"></video> | |
| 568 | + </div> | |
| 569 | + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a | |
| 570 | + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div> | |
| 571 | + </el-form> | |
| 572 | + | |
| 573 | + | |
| 574 | + <div slot="footer" class="dialog-footer"> | |
| 575 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" | |
| 576 | + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回 | |
| 577 | + </el-button> | |
| 578 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 579 | + </div> | |
| 580 | + </el-dialog> | |
| 581 | + | |
| 582 | + <el-dialog :title="title" :visible.sync="supervisionOpen" width="700px" append-to-body | |
| 583 | + :close-on-click-modal="false"> | |
| 584 | + <supervisionInfo :infoData="supervisionData" v-if="supervisionOpen"/> | |
| 585 | + | |
| 586 | + <div v-for="item in this.form.formData"> | |
| 587 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 588 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 589 | + </div> | |
| 590 | + | |
| 591 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 592 | + | |
| 593 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 594 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 595 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 596 | + </el-table> | |
| 597 | + | |
| 598 | + <div slot="footer" class="dialog-footer"> | |
| 599 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 600 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 601 | + </div> | |
| 602 | + </el-dialog> | |
| 603 | + | |
| 604 | + <el-dialog :title="title" :visible.sync="company" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 605 | + <companyInfo :businessKey="businessKey" :businessType="0" v-if="company"/> | |
| 606 | + <div v-for="item in this.form.formData"> | |
| 607 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 608 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 609 | + </div> | |
| 610 | + | |
| 611 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 612 | + | |
| 613 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 614 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 615 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 616 | + </el-table> | |
| 617 | + <div slot="footer" class="dialog-footer"> | |
| 618 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 619 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 620 | + </div> | |
| 621 | + </el-dialog> | |
| 622 | + | |
| 623 | + <el-dialog :title="title" :visible.sync="vehicle" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 624 | + <companyInfo :businessKey="businessKey" :businessType="1" v-if="vehicle"/> | |
| 625 | + <div v-for="item in this.form.formData"> | |
| 626 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 627 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 628 | + </div> | |
| 629 | + | |
| 630 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 631 | + | |
| 632 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 633 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 634 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 635 | + </el-table> | |
| 636 | + <div slot="footer" class="dialog-footer"> | |
| 637 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 638 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 639 | + </div> | |
| 640 | + </el-dialog> | |
| 641 | + | |
| 642 | + <el-dialog :title="title" :visible.sync="driver" width="1500px" append-to-body :close-on-click-modal="false"> | |
| 643 | + <companyInfo :businessKey="businessKey" :businessType="5" v-if="driver"/> | |
| 644 | + <div v-for="item in this.form.formData"> | |
| 645 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | |
| 646 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | |
| 647 | + </div> | |
| 648 | + | |
| 649 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 650 | + | |
| 651 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 652 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 653 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 654 | + </el-table> | |
| 655 | + <div slot="footer" class="dialog-footer"> | |
| 656 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | |
| 657 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | |
| 658 | + </div> | |
| 659 | + </el-dialog> | |
| 660 | + | |
| 661 | + </div> | |
| 662 | +</template> | |
| 663 | + | |
| 664 | +<style> | |
| 665 | +@import '../../../assets/css/task.css'; | |
| 666 | +</style> | |
| 667 | + | |
| 668 | +<script> | |
| 669 | + import {formDataSave, formDataShow, listTask,getNames} from "@/api/activiti/task"; | |
| 670 | + import {historyFromData} from '@/api/activiti/historyFormdata' | |
| 671 | + import {addSign, getSignByObjId} from "@/api/sign/sign"; | |
| 672 | + import {updateCaseOffline} from "@/api/caseOffline/caseOffline"; | |
| 673 | + import {updateViolationCaseFileReader} from "@/api/casefile/violationCaseFile"; | |
| 674 | + import {updateViolationCaseFileReader1} from "@/api/casefile/violationWarningInformation"; | |
| 675 | + import {getDict, getSupervision, getUsers} from "@/api/dict"; | |
| 676 | + import {activeThreestep} from "@/api/business/threestep"; | |
| 677 | + import {getToken} from "@/utils/auth"; | |
| 678 | + import {addReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess"; | |
| 679 | + import {updateHandleAffairs} from "@/api/office/handle"; | |
| 680 | + import Treeselect from "@riophae/vue-treeselect"; | |
| 681 | + import '@riophae/vue-treeselect/dist/vue-treeselect.css' | |
| 682 | + import leaveHistoryForm from "@/views/workflow/leaveHistoryForm"; | |
| 683 | + import threestepInfo from "@/views/business/threestep/threestepInfo"; | |
| 684 | + import taskCard from "@/views/activiti/task/taskCard"; | |
| 685 | + import conferenceInfo from "@/views/office/conference/conferenceInfo"; | |
| 686 | + import leaveApplicationInfo from "@/views/office/leaveApplication/leaveApplicationInfo"; | |
| 687 | + import constructsiteInfo from "@/views/activiti/task/constructsiteInfo"; | |
| 688 | + import earthsitesInfo from "@/views/activiti/task/earthsitesInfo"; | |
| 689 | + import contractInfo from "@/views/activiti/task/contractInfo"; | |
| 690 | + import logisticsInfo from "@/views/office/logistics/logisticsInfo"; | |
| 691 | + import handleInfo from "@/views/office/handle/handleInfo"; | |
| 692 | + import caseOfflineInfo from "@/views/caseOffline/caseOffline/caseOfflineInfo"; | |
| 693 | + import violationCaseFileInfo from "@/views/h5/task/violationCaseFileInfo"; | |
| 694 | + import violationWarningInformationInfo from "@/views/h5/task/violationWarningInformationInfo"; | |
| 695 | + import supervisionInfo from "@/views/activiti/task/SupervisionInfo"; | |
| 696 | + import companyInfo from "@/views/activiti/task/companyInfo"; | |
| 697 | + import driverInfo from "@/views/activiti/task/driverInfo"; | |
| 698 | + import vehicleInfo from "@/views/activiti/task/vehicleInfo"; | |
| 699 | + | |
| 700 | + import taskmethod from '@/api/taskmethod' | |
| 701 | + | |
| 702 | + export default { | |
| 703 | + name: "task", | |
| 704 | + mixins: [taskmethod], | |
| 705 | + components: { | |
| 706 | + taskCard, | |
| 707 | + leaveHistoryForm, | |
| 708 | + threestepInfo, | |
| 709 | + conferenceInfo, | |
| 710 | + leaveApplicationInfo, | |
| 711 | + logisticsInfo, | |
| 712 | + handleInfo, | |
| 713 | + constructsiteInfo, | |
| 714 | + Treeselect, | |
| 715 | + earthsitesInfo, | |
| 716 | + contractInfo, | |
| 717 | + caseOfflineInfo, | |
| 718 | + violationCaseFileInfo, | |
| 719 | + violationWarningInformationInfo, | |
| 720 | + supervisionInfo, | |
| 721 | + companyInfo, | |
| 722 | + driverInfo, | |
| 723 | + vehicleInfo | |
| 724 | + }, | |
| 725 | + data() { | |
| 726 | + return { | |
| 727 | + modalLoading:false, | |
| 728 | + id: '', | |
| 729 | + definitionKey: '', | |
| 730 | + businessKey: '', | |
| 731 | + // 遮罩层 | |
| 732 | + loading: true, | |
| 733 | + // 选中数组 | |
| 734 | + ids: [], | |
| 735 | + // 非单个禁用 | |
| 736 | + single: true, | |
| 737 | + // 非多个禁用 | |
| 738 | + multiple: true, | |
| 739 | + // 显示搜索条件 | |
| 740 | + showSearch: true, | |
| 741 | + // 总条数 | |
| 742 | + total: 0, | |
| 743 | + // 请假表格数据 | |
| 744 | + taskList: [], | |
| 745 | + // 弹出层标题 | |
| 746 | + title: "", | |
| 747 | + // 是否显示弹出层 | |
| 748 | + picSample: false, | |
| 749 | + taskName: null, | |
| 750 | + // 查询参数 | |
| 751 | + queryParams: { | |
| 752 | + name:null, | |
| 753 | + pageNum: 1, | |
| 754 | + pageSize: 10, | |
| 755 | + role: null, | |
| 756 | + dept: null, | |
| 757 | + }, | |
| 758 | + // 表单参数 | |
| 759 | + form: { | |
| 760 | + formData: [] | |
| 761 | + }, | |
| 762 | + needShow: false, | |
| 763 | + // 表单校验 | |
| 764 | + rules: { | |
| 765 | + subReason: [{ | |
| 766 | + required: true, | |
| 767 | + message: '请填写补充说明', | |
| 768 | + trigger: 'blur' | |
| 769 | + },], | |
| 770 | + | |
| 771 | + }, | |
| 772 | + picIndex: 0, | |
| 773 | + fileList: [], | |
| 774 | + upload: { | |
| 775 | + // 是否显示弹出层(用户导入) | |
| 776 | + open: false, | |
| 777 | + // 弹出层标题(用户导入) | |
| 778 | + title: "", | |
| 779 | + // 是否禁用上传 | |
| 780 | + isUploading: false, | |
| 781 | + // 设置上传的请求头部 | |
| 782 | + headers: { | |
| 783 | + Authorization: "Bearer " + getToken() | |
| 784 | + }, | |
| 785 | + // 上传的地址 | |
| 786 | + url: process.env.VUE_APP_BASE_API + "/business/threestep/upload", | |
| 787 | + }, | |
| 788 | + controlId: null, | |
| 789 | + users: [], | |
| 790 | + options: [], | |
| 791 | + usersName: [], | |
| 792 | + deptName: null, | |
| 793 | + supervisionData: null, | |
| 794 | + uploadImageDialog: false, | |
| 795 | + idInfo: null, | |
| 796 | + signData: null, | |
| 797 | + areas: [], | |
| 798 | + roles: [], | |
| 799 | + depts: [], | |
| 800 | + signDataInfo: null, | |
| 801 | + earthsites: false, | |
| 802 | + contract: false, | |
| 803 | + logisticsInfoOpen: false, | |
| 804 | + handleAffairsInfoOpen: false, | |
| 805 | + caseOffline: false, | |
| 806 | + violationCaseFile: false, | |
| 807 | + violationCaseFile1: false, | |
| 808 | + supervisionOpen: false, | |
| 809 | + open: false, | |
| 810 | + open2: false, | |
| 811 | + conferenceOpen: false, | |
| 812 | + construct: false, | |
| 813 | + leaveApplicationOpen: false, | |
| 814 | + prev:[], | |
| 815 | + userNodes: [], | |
| 816 | + company: false, | |
| 817 | + driver: false, | |
| 818 | + vehicle: false, | |
| 819 | + names: null, | |
| 820 | + hisfromData: [], | |
| 821 | + slides: [], | |
| 822 | + slidesArys: [], | |
| 823 | + slides1: [], | |
| 824 | + videoSrc1: [], | |
| 825 | + }; | |
| 826 | + }, | |
| 827 | + created() { | |
| 828 | + let dep = {type: "CSUserDepartmentType"}; | |
| 829 | + | |
| 830 | + getDict(dep).then(res => { | |
| 831 | + this.depts = res.result; | |
| 832 | + for(let i in res.result){ | |
| 833 | + if(res.result[i].name.indexOf("渣土办") < 1){ | |
| 834 | + this.prev.push(res.result[i]); | |
| 835 | + } | |
| 836 | + } | |
| 837 | + }); | |
| 838 | + | |
| 839 | + let role = {type: "CSUserPostType"}; | |
| 840 | + | |
| 841 | + getDict(role).then(res => { | |
| 842 | + this.roles = res.result; | |
| 843 | + }); | |
| 844 | + | |
| 845 | + listTask(this.queryParams).then(response => { | |
| 846 | + this.taskList = response.rows; | |
| 847 | + this.names = response.names; | |
| 848 | + this.total = response.total; | |
| 849 | + this.loading = false; | |
| 850 | + }); | |
| 851 | + }, | |
| 852 | + methods: { | |
| 853 | + | |
| 854 | + }, | |
| 855 | + } | |
| 856 | + | |
| 857 | +</script> | ... | ... |
trash-ui/src/views/h5/leaveApplication/index.vue
| ... | ... | @@ -20,13 +20,15 @@ |
| 20 | 20 | <el-select v-model="queryParams.type" placeholder="请选择请假类型" size="small"> |
| 21 | 21 | <el-option label="事假" value="事假"/> |
| 22 | 22 | <el-option label="病假" value="病假"/> |
| 23 | - <el-option label="年假" value="年假"/> | |
| 24 | 23 | <el-option label="婚假" value="婚假"/> |
| 25 | 24 | <el-option label="产假" value="产假"/> |
| 26 | 25 | <el-option label="丧假" value="丧假"/> |
| 27 | - <el-option label="探亲假" value="探亲假"/> | |
| 28 | - <el-option label="护理假" value="护理假"/> | |
| 29 | 26 | <el-option label="公休假" value="公休假"/> |
| 27 | + <el-option label="探亲假" value="探亲假"/> | |
| 28 | + <el-option label="护理假" value="护理假"/> | |
| 29 | + <el-option label="亲子假" value="亲子假"/> | |
| 30 | + <el-option label="育儿假" value="育儿假"/> | |
| 31 | + <el-option label="其他" value="其他"/> | |
| 30 | 32 | </el-select> |
| 31 | 33 | </el-form-item> |
| 32 | 34 | <el-form-item> |
| ... | ... | @@ -109,13 +111,15 @@ |
| 109 | 111 | <el-select v-model="form.type" placeholder="请选择请假类型" style="width: 100%"> |
| 110 | 112 | <el-option label="事假" value="事假"/> |
| 111 | 113 | <el-option label="病假" value="病假"/> |
| 112 | - <el-option label="年假" value="年假"/> | |
| 113 | 114 | <el-option label="婚假" value="婚假"/> |
| 114 | 115 | <el-option label="产假" value="产假"/> |
| 115 | 116 | <el-option label="丧假" value="丧假"/> |
| 117 | + <el-option label="公休假" value="公休假"/> | |
| 116 | 118 | <el-option label="探亲假" value="探亲假"/> |
| 117 | - <el-option label="公休假" value="公休假"/> | |
| 118 | 119 | <el-option label="护理假" value="护理假"/> |
| 120 | + <el-option label="亲子假" value="亲子假"/> | |
| 121 | + <el-option label="育儿假" value="育儿假"/> | |
| 122 | + <el-option label="其他" value="其他"/> | |
| 119 | 123 | </el-select> |
| 120 | 124 | </el-form-item> |
| 121 | 125 | |
| ... | ... | @@ -201,7 +205,8 @@ |
| 201 | 205 | </div> |
| 202 | 206 | </template> |
| 203 | 207 | |
| 204 | -<script src="@/api/leave.js"/> | |
| 208 | +<script src="@/api/leave.js"> | |
| 209 | +</script> | |
| 205 | 210 | <style scope> |
| 206 | 211 | .el-select-dropdown__item{ |
| 207 | 212 | width:300px; | ... | ... |
trash-ui/src/views/h5/leaveApplication/leaveApplicationInfo.vue
| ... | ... | @@ -10,12 +10,15 @@ |
| 10 | 10 | <el-select v-model="form.type" placeholder="请选择请假类型" style="width: 100%" :disabled="true"> |
| 11 | 11 | <el-option label="事假" value="事假"/> |
| 12 | 12 | <el-option label="病假" value="病假"/> |
| 13 | - <el-option label="年假" value="年假"/> | |
| 14 | 13 | <el-option label="婚假" value="婚假"/> |
| 15 | 14 | <el-option label="产假" value="产假"/> |
| 16 | 15 | <el-option label="丧假" value="丧假"/> |
| 16 | + <el-option label="公休假" value="公休假"/> | |
| 17 | 17 | <el-option label="探亲假" value="探亲假"/> |
| 18 | 18 | <el-option label="护理假" value="护理假"/> |
| 19 | + <el-option label="亲子假" value="亲子假"/> | |
| 20 | + <el-option label="育儿假" value="育儿假"/> | |
| 21 | + <el-option label="其他" value="其他"/> | |
| 19 | 22 | </el-select> |
| 20 | 23 | </el-form-item> |
| 21 | 24 | |
| ... | ... | @@ -45,11 +48,12 @@ |
| 45 | 48 | <el-input v-model="form.content" type="textarea" :rows="4" :disabled="true"/> |
| 46 | 49 | </el-form-item> |
| 47 | 50 | <el-form-item label="附件图片预览" v-if="slide1.length!=0"> |
| 48 | - <el-image v-for="item in slide1" | |
| 51 | + <el-image v-for="(item, index) in slide1" | |
| 49 | 52 | style="width: 150px; height: 100px; margin: 5px;" |
| 50 | 53 | :src="item" |
| 51 | 54 | :preview-src-list="slide1" |
| 52 | - :z-index="2000"> | |
| 55 | + :z-index="2000" | |
| 56 | + :key="index"> | |
| 53 | 57 | </el-image> |
| 54 | 58 | </el-form-item> |
| 55 | 59 | <el-table :data="fileEntityList"> |
| ... | ... | @@ -67,6 +71,11 @@ |
| 67 | 71 | </template> |
| 68 | 72 | </el-table-column> |
| 69 | 73 | </el-table> |
| 74 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 75 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 76 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 77 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 78 | + </el-table> | |
| 70 | 79 | </el-form> |
| 71 | 80 | </div> |
| 72 | 81 | </template> |
| ... | ... | @@ -74,7 +83,7 @@ |
| 74 | 83 | <script> |
| 75 | 84 | import {getLeaveApplication} from "@/api/office/leaveApplication"; |
| 76 | 85 | import Editor from '@/components/ZcEditor'; |
| 77 | -import {getBase64} from "@/api/business/threestep"; | |
| 86 | +import {historyFromData} from "@/api/activiti/historyFormdata"; | |
| 78 | 87 | |
| 79 | 88 | export default { |
| 80 | 89 | name: "leaveApplicationInfo", |
| ... | ... | @@ -93,7 +102,9 @@ export default { |
| 93 | 102 | fileEntityList: [], |
| 94 | 103 | showPic: null, |
| 95 | 104 | picImage: null, |
| 96 | - slide1: [] | |
| 105 | + slide1: [], | |
| 106 | + taskNodeName:null, | |
| 107 | + hisfromData:[] | |
| 97 | 108 | } |
| 98 | 109 | }, |
| 99 | 110 | created() { |
| ... | ... | @@ -103,13 +114,19 @@ export default { |
| 103 | 114 | init() { |
| 104 | 115 | getLeaveApplication(this.idInfo).then(response => { |
| 105 | 116 | this.form = response.data.leaveApplication; |
| 117 | + historyFromData("workflow_leave:" + this.idInfo).then(response => { | |
| 118 | + for(let i in response.data){ | |
| 119 | + this.hisfromData.push(response.data[i]); | |
| 120 | + } | |
| 121 | + }) | |
| 106 | 122 | let files = JSON.stringify(response.data.uploadFiles); |
| 107 | 123 | this.fileEntityList = JSON.parse(files.replaceAll("filePath", "url").replaceAll("fileName", "name")); |
| 108 | 124 | this.fileEntityList.map(item => { |
| 109 | - if(item.url.indexOf(".jpg") > -1 || item.url.indexOf(".png") > -1 || item.url.indexOf(".jpeg") > -1 || item.url.indexOf(".jpg") > -1){ | |
| 125 | + if (item.url.indexOf(".jpg") > -1 || item.url.indexOf(".png") > -1 || item.url.indexOf(".jpeg") > -1 || item.url.indexOf(".jpg") > -1) { | |
| 110 | 126 | this.slide1.push(process.env.VUE_APP_BASE_API + item.url); |
| 111 | 127 | } |
| 112 | - }) | |
| 128 | + }); | |
| 129 | + //this.$set(this.form,"taskNodeName",this.form.taskNodeName) | |
| 113 | 130 | }); |
| 114 | 131 | }, |
| 115 | 132 | /** 文件下载 */ |
| ... | ... | @@ -122,6 +139,12 @@ export default { |
| 122 | 139 | a.setAttribute('href', process.env.VUE_APP_BASE_API + url); |
| 123 | 140 | a.click() |
| 124 | 141 | }, |
| 142 | + | |
| 143 | + getHistoryData(){ | |
| 144 | + historyFromData("workflow_leave:" + this.idInfo).then(response => { | |
| 145 | + return response.data[response.data.length - 1].taskNodeName; | |
| 146 | + }) | |
| 147 | + } | |
| 125 | 148 | } |
| 126 | 149 | } |
| 127 | 150 | </script> | ... | ... |
trash-ui/src/views/office/conference/conferenceInfo.vue
| ... | ... | @@ -64,12 +64,21 @@ |
| 64 | 64 | </el-table-column> |
| 65 | 65 | </el-table> |
| 66 | 66 | </el-row> |
| 67 | + <el-row> | |
| 68 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 69 | + | |
| 70 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 71 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 72 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 73 | + </el-table> | |
| 74 | + </el-row> | |
| 67 | 75 | </el-form> |
| 68 | 76 | </template> |
| 69 | 77 | |
| 70 | 78 | <script> |
| 71 | 79 | import {getConference} from "@/api/office/conference"; |
| 72 | 80 | import Editor from '@/components/ZcEditor'; |
| 81 | +import {historyFromData} from "@/api/activiti/historyFormdata"; | |
| 73 | 82 | export default { |
| 74 | 83 | name: "conferenceInfo", |
| 75 | 84 | components: {Editor}, |
| ... | ... | @@ -85,7 +94,8 @@ export default { |
| 85 | 94 | return { |
| 86 | 95 | form: {}, |
| 87 | 96 | fileEntityList:[], |
| 88 | - slide1:[] | |
| 97 | + slide1:[], | |
| 98 | + hisfromData:[] | |
| 89 | 99 | } |
| 90 | 100 | }, |
| 91 | 101 | created() { |
| ... | ... | @@ -95,6 +105,11 @@ export default { |
| 95 | 105 | init(){ |
| 96 | 106 | getConference(this.idInfo).then(response => { |
| 97 | 107 | this.form = response.data.conference; |
| 108 | + historyFromData("conference:" + this.idInfo).then(response => { | |
| 109 | + for(let i in response.data){ | |
| 110 | + this.hisfromData.push(response.data[i]); | |
| 111 | + } | |
| 112 | + }) | |
| 98 | 113 | let files = JSON.stringify(response.data.uploadFiles); |
| 99 | 114 | this.fileEntityList = JSON.parse(files.replaceAll("filePath", "url").replaceAll("fileName", "name")) |
| 100 | 115 | this.fileEntityList.map(item => { | ... | ... |
trash-ui/src/views/office/handle/handleInfo.vue
| ... | ... | @@ -114,12 +114,20 @@ |
| 114 | 114 | </el-table-column> |
| 115 | 115 | </el-table> |
| 116 | 116 | </el-row> |
| 117 | + <el-row> | |
| 118 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 119 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 120 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 121 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 122 | + </el-table> | |
| 123 | + </el-row> | |
| 117 | 124 | </el-form> |
| 118 | 125 | </template> |
| 119 | 126 | |
| 120 | 127 | <script> |
| 121 | 128 | import {getHandle} from "@/api/office/handle"; |
| 122 | 129 | import {listReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess"; |
| 130 | +import {historyFromData} from "@/api/activiti/historyFormdata"; | |
| 123 | 131 | |
| 124 | 132 | export default { |
| 125 | 133 | name: "handleInfo", |
| ... | ... | @@ -168,7 +176,8 @@ export default { |
| 168 | 176 | "name": "治理部" |
| 169 | 177 | }, |
| 170 | 178 | ], |
| 171 | - slide1:[] | |
| 179 | + slide1:[], | |
| 180 | + hisfromData:[] | |
| 172 | 181 | } |
| 173 | 182 | }, |
| 174 | 183 | created() { |
| ... | ... | @@ -179,6 +188,21 @@ export default { |
| 179 | 188 | getHandle(this.idInfo).then(response => { |
| 180 | 189 | this.form = response.data.handleAffairs; |
| 181 | 190 | let files = JSON.stringify(response.data.uploadFiles); |
| 191 | + historyFromData("handleAffairs:" + this.idInfo).then(response => { | |
| 192 | + for(let i in response.data){ | |
| 193 | + this.hisfromData.push(response.data[i]); | |
| 194 | + } | |
| 195 | + }) | |
| 196 | + historyFromData("gongwenchuli:" + this.idInfo).then(response => { | |
| 197 | + for(let i in response.data){ | |
| 198 | + this.hisfromData.push(response.data[i]); | |
| 199 | + } | |
| 200 | + }) | |
| 201 | + historyFromData("yuelan:" + this.idInfo).then(response => { | |
| 202 | + for(let i in response.data){ | |
| 203 | + this.hisfromData.push(response.data[i]); | |
| 204 | + } | |
| 205 | + }) | |
| 182 | 206 | this.fileEntityList = JSON.parse(files.replaceAll("filePath", "url").replaceAll("fileName", "name")); |
| 183 | 207 | this.fileEntityList.map(item => { |
| 184 | 208 | if(item.url.indexOf(".jpg") > -1 || item.url.indexOf(".png") > -1 || item.url.indexOf(".jpeg") > -1 || item.url.indexOf(".jpg") > -1){ | ... | ... |
trash-ui/src/views/office/leaveApplication/index.vue
| ... | ... | @@ -20,13 +20,15 @@ |
| 20 | 20 | <el-select v-model="queryParams.type" placeholder="请选择请假类型" size="small"> |
| 21 | 21 | <el-option label="事假" value="事假"/> |
| 22 | 22 | <el-option label="病假" value="病假"/> |
| 23 | - <el-option label="年假" value="年假"/> | |
| 24 | 23 | <el-option label="婚假" value="婚假"/> |
| 25 | 24 | <el-option label="产假" value="产假"/> |
| 26 | 25 | <el-option label="丧假" value="丧假"/> |
| 26 | + <el-option label="公休假" value="公休假"/> | |
| 27 | 27 | <el-option label="探亲假" value="探亲假"/> |
| 28 | 28 | <el-option label="护理假" value="护理假"/> |
| 29 | - <el-option label="公休假" value="公休假"/> | |
| 29 | + <el-option label="亲子假" value="亲子假"/> | |
| 30 | + <el-option label="育儿假" value="育儿假"/> | |
| 31 | + <el-option label="其他" value="其他"/> | |
| 30 | 32 | </el-select> |
| 31 | 33 | </el-form-item> |
| 32 | 34 | <el-form-item> |
| ... | ... | @@ -155,13 +157,15 @@ |
| 155 | 157 | <el-select v-model="form.type" placeholder="请选择请假类型" style="width: 100%"> |
| 156 | 158 | <el-option label="事假" value="事假"/> |
| 157 | 159 | <el-option label="病假" value="病假"/> |
| 158 | - <el-option label="年假" value="年假"/> | |
| 159 | 160 | <el-option label="婚假" value="婚假"/> |
| 160 | 161 | <el-option label="产假" value="产假"/> |
| 161 | 162 | <el-option label="丧假" value="丧假"/> |
| 163 | + <el-option label="公休假" value="公休假"/> | |
| 162 | 164 | <el-option label="探亲假" value="探亲假"/> |
| 163 | 165 | <el-option label="护理假" value="护理假"/> |
| 164 | - <el-option label="公休假" value="公休假"/> | |
| 166 | + <el-option label="亲子假" value="亲子假"/> | |
| 167 | + <el-option label="育儿假" value="育儿假"/> | |
| 168 | + <el-option label="其他" value="其他"/> | |
| 165 | 169 | </el-select> |
| 166 | 170 | </el-form-item> |
| 167 | 171 | ... | ... |
trash-ui/src/views/office/leaveApplication/leaveApplicationInfo.vue
| ... | ... | @@ -10,12 +10,15 @@ |
| 10 | 10 | <el-select v-model="form.type" placeholder="请选择请假类型" style="width: 100%" :disabled="true"> |
| 11 | 11 | <el-option label="事假" value="事假"/> |
| 12 | 12 | <el-option label="病假" value="病假"/> |
| 13 | - <el-option label="年假" value="年假"/> | |
| 14 | 13 | <el-option label="婚假" value="婚假"/> |
| 15 | 14 | <el-option label="产假" value="产假"/> |
| 16 | 15 | <el-option label="丧假" value="丧假"/> |
| 16 | + <el-option label="公休假" value="公休假"/> | |
| 17 | 17 | <el-option label="探亲假" value="探亲假"/> |
| 18 | 18 | <el-option label="护理假" value="护理假"/> |
| 19 | + <el-option label="亲子假" value="亲子假"/> | |
| 20 | + <el-option label="育儿假" value="育儿假"/> | |
| 21 | + <el-option label="其他" value="其他"/> | |
| 19 | 22 | </el-select> |
| 20 | 23 | </el-form-item> |
| 21 | 24 | |
| ... | ... | @@ -45,11 +48,12 @@ |
| 45 | 48 | <el-input v-model="form.content" type="textarea" :rows="4" :disabled="true"/> |
| 46 | 49 | </el-form-item> |
| 47 | 50 | <el-form-item label="附件图片预览" v-if="slide1.length!=0"> |
| 48 | - <el-image v-for="item in slide1" | |
| 51 | + <el-image v-for="(item, index) in slide1" | |
| 49 | 52 | style="width: 150px; height: 100px; margin: 5px;" |
| 50 | 53 | :src="item" |
| 51 | 54 | :preview-src-list="slide1" |
| 52 | - :z-index="2000"> | |
| 55 | + :z-index="2000" | |
| 56 | + :key="index"> | |
| 53 | 57 | </el-image> |
| 54 | 58 | </el-form-item> |
| 55 | 59 | <el-table :data="fileEntityList"> |
| ... | ... | @@ -109,7 +113,7 @@ export default { |
| 109 | 113 | if(item.url.indexOf(".jpg") > -1 || item.url.indexOf(".png") > -1 || item.url.indexOf(".jpeg") > -1 || item.url.indexOf(".jpg") > -1){ |
| 110 | 114 | this.slide1.push(process.env.VUE_APP_BASE_API + item.url); |
| 111 | 115 | } |
| 112 | - }) | |
| 116 | + }); | |
| 113 | 117 | }); |
| 114 | 118 | }, |
| 115 | 119 | /** 文件下载 */ | ... | ... |
trash-ui/src/views/office/logistics/logisticsInfo.vue
| ... | ... | @@ -54,12 +54,18 @@ |
| 54 | 54 | :disabled="true" |
| 55 | 55 | @input="form.quantity=form.quantity.replace(/[^0-9]/g,'');"/> |
| 56 | 56 | </el-form-item> |
| 57 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | |
| 58 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | |
| 59 | + <el-table-column label="处理人" align="center" prop="createName"/> | |
| 60 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | |
| 61 | + </el-table> | |
| 57 | 62 | </el-form> |
| 58 | 63 | </template> |
| 59 | 64 | |
| 60 | 65 | <script> |
| 61 | 66 | import {getLogistics} from "@/api/office/logistics"; |
| 62 | 67 | import {getDict} from "@/api/dict"; |
| 68 | +import {historyFromData} from "@/api/activiti/historyFormdata"; | |
| 63 | 69 | export default { |
| 64 | 70 | name: "logisticsInfo", |
| 65 | 71 | props: { |
| ... | ... | @@ -74,7 +80,8 @@ export default { |
| 74 | 80 | return { |
| 75 | 81 | form: {}, |
| 76 | 82 | type:null, |
| 77 | - depts:[] | |
| 83 | + depts:[], | |
| 84 | + hisfromData:[] | |
| 78 | 85 | } |
| 79 | 86 | }, |
| 80 | 87 | created() { |
| ... | ... | @@ -89,6 +96,11 @@ export default { |
| 89 | 96 | getLogistics(this.idInfo).then(response => { |
| 90 | 97 | this.form = response.data |
| 91 | 98 | this.type = response.data.type; |
| 99 | + historyFromData("logistics:" + this.idInfo).then(response => { | |
| 100 | + for(let i in response.data){ | |
| 101 | + this.hisfromData.push(response.data[i]); | |
| 102 | + } | |
| 103 | + }) | |
| 92 | 104 | }); |
| 93 | 105 | } |
| 94 | 106 | } | ... | ... |
trash-ui/src/views/unit/carInfo/index.vue
| ... | ... | @@ -12,9 +12,9 @@ |
| 12 | 12 | </el-form-item> |
| 13 | 13 | <el-form-item label="车辆类型" prop="carType"> |
| 14 | 14 | <el-select v-model="queryParams.carType" placeholder="请选择车辆类型" clearable style="width: 100%;" size="small"> |
| 15 | - <el-option label="燃油渣土车" value="燃油渣土车" /> | |
| 16 | - <el-option label="电动渣土车" value="电动渣土车" /> | |
| 17 | - <el-option label="其它" value="其它" /> | |
| 15 | + <el-option label="轻型货车" value="轻型货车" /> | |
| 16 | + <el-option label="中型货车" value="中型货车" /> | |
| 17 | + <el-option label="大中型货车" value="大中型货车" /> | |
| 18 | 18 | </el-select> |
| 19 | 19 | </el-form-item> |
| 20 | 20 | <el-form-item label="车牌号" prop="carCode"> | ... | ... |
trash-ui/src/views/unit/carInfo/info.vue
| ... | ... | @@ -17,9 +17,9 @@ |
| 17 | 17 | <el-col :span="7"> |
| 18 | 18 | <el-form-item label="车辆类型" prop="carType"> |
| 19 | 19 | <el-select v-model="form.carType" placeholder="请选择车辆类型" clearable style="width: 100%;"> |
| 20 | - <el-option label="燃油渣土车" value="燃油渣土车" /> | |
| 21 | - <el-option label="电动渣土车" value="电动渣土车" /> | |
| 22 | - <el-option label="其它" value="其它" /> | |
| 20 | + <el-option label="轻型货车" value="轻型货车" /> | |
| 21 | + <el-option label="中型货车" value="中型货车" /> | |
| 22 | + <el-option label="大中型货车" value="大中型货车" /> | |
| 23 | 23 | </el-select> |
| 24 | 24 | </el-form-item> |
| 25 | 25 | </el-col> |
| ... | ... | @@ -672,7 +672,7 @@ export default { |
| 672 | 672 | form.lengthWidthHeight = form.length+";"+form.width+";"+form.height; |
| 673 | 673 | }else{ |
| 674 | 674 | this.$message({ |
| 675 | - message: '请填写长宽高!', | |
| 675 | + message: '请在体积下拉框选择长宽高填写!', | |
| 676 | 676 | type: 'warning' |
| 677 | 677 | }); |
| 678 | 678 | return; | ... | ... |
trash-unit/src/main/java/com/trash/carInfo/mapper/CarInfoMapper.java
| 1 | 1 | package com.trash.carInfo.mapper; |
| 2 | 2 | |
| 3 | -import java.util.List; | |
| 4 | - | |
| 5 | 3 | import com.trash.carInfo.domain.CarDriverRelation; |
| 6 | 4 | import com.trash.carInfo.domain.CarInfo; |
| 7 | 5 | import com.trash.carInfo.domain.vo.CarInfoVo; |
| 6 | +import org.apache.ibatis.annotations.Param; | |
| 7 | + | |
| 8 | +import java.util.List; | |
| 8 | 9 | |
| 9 | 10 | /** |
| 10 | 11 | * 运输车辆管理Mapper接口 |
| ... | ... | @@ -30,6 +31,8 @@ public interface CarInfoMapper |
| 30 | 31 | */ |
| 31 | 32 | List<CarInfoVo> selectCarInfoList(CarInfoVo carInfo); |
| 32 | 33 | |
| 34 | + List<CarInfoVo> selectByCompanyId(@Param("companyId") Long companyId); | |
| 35 | + | |
| 33 | 36 | /** |
| 34 | 37 | * 新增运输车辆管理 |
| 35 | 38 | * | ... | ... |
trash-unit/src/main/java/com/trash/carInfo/service/ICarInfoService.java
| 1 | 1 | package com.trash.carInfo.service; |
| 2 | 2 | |
| 3 | -import java.io.IOException; | |
| 4 | -import java.util.List; | |
| 5 | 3 | import com.trash.carInfo.domain.CarInfo; |
| 6 | 4 | import com.trash.carInfo.domain.vo.CarInfoVo; |
| 7 | 5 | import org.springframework.web.multipart.MultipartFile; |
| 8 | 6 | |
| 7 | +import java.io.IOException; | |
| 8 | +import java.util.List; | |
| 9 | + | |
| 9 | 10 | /** |
| 10 | 11 | * 运输车辆管理Service接口 |
| 11 | 12 | * |
| ... | ... | @@ -30,6 +31,8 @@ public interface ICarInfoService |
| 30 | 31 | */ |
| 31 | 32 | List<CarInfoVo> selectCarInfoList(CarInfoVo carInfo); |
| 32 | 33 | |
| 34 | + List<CarInfoVo> selectByCompanyId(Long companyId); | |
| 35 | + | |
| 33 | 36 | /** |
| 34 | 37 | * 新增运输车辆管理 |
| 35 | 38 | * | ... | ... |
trash-unit/src/main/java/com/trash/carInfo/service/impl/CarInfoServiceImpl.java
| 1 | 1 | package com.trash.carInfo.service.impl; |
| 2 | 2 | |
| 3 | -import java.io.IOException; | |
| 4 | -import java.util.List; | |
| 5 | - | |
| 6 | 3 | import com.trash.carInfo.domain.CarDriverRelation; |
| 4 | +import com.trash.carInfo.domain.CarInfo; | |
| 7 | 5 | import com.trash.carInfo.domain.vo.CarInfoVo; |
| 6 | +import com.trash.carInfo.mapper.CarInfoMapper; | |
| 7 | +import com.trash.carInfo.service.ICarInfoService; | |
| 8 | 8 | import com.trash.common.config.trashConfig; |
| 9 | 9 | import com.trash.common.utils.DateUtils; |
| 10 | 10 | import com.trash.common.utils.SecurityUtils; |
| 11 | -import com.trash.enterprise.domain.TransportationEnterprise; | |
| 12 | 11 | import com.trash.enterprise.mapper.TransportationEnterpriseMapper; |
| 13 | 12 | import org.springframework.beans.factory.annotation.Autowired; |
| 14 | 13 | import org.springframework.stereotype.Service; |
| 15 | -import com.trash.carInfo.mapper.CarInfoMapper; | |
| 16 | -import com.trash.carInfo.domain.CarInfo; | |
| 17 | -import com.trash.carInfo.service.ICarInfoService; | |
| 18 | 14 | import org.springframework.transaction.annotation.Transactional; |
| 19 | 15 | import org.springframework.web.multipart.MultipartFile; |
| 20 | 16 | |
| 17 | +import java.io.IOException; | |
| 18 | +import java.util.List; | |
| 19 | + | |
| 21 | 20 | import static com.trash.common.utils.file.FileUploadUtils.upload; |
| 22 | 21 | |
| 23 | 22 | /** |
| ... | ... | @@ -59,6 +58,11 @@ public class CarInfoServiceImpl implements ICarInfoService |
| 59 | 58 | return carInfoMapper.selectCarInfoList(carInfo); |
| 60 | 59 | } |
| 61 | 60 | |
| 61 | + @Override | |
| 62 | + public List<CarInfoVo> selectByCompanyId(Long companyId) { | |
| 63 | + return carInfoMapper.selectByCompanyId(companyId); | |
| 64 | + } | |
| 65 | + | |
| 62 | 66 | /** |
| 63 | 67 | * 新增运输车辆管理 |
| 64 | 68 | * | ... | ... |
trash-unit/src/main/resources/mapper/unit/CarInfoMapper.xml
| ... | ... | @@ -149,6 +149,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
| 149 | 149 | <include refid="selectCarInfoVo"/> |
| 150 | 150 | where id = #{id} |
| 151 | 151 | </select> |
| 152 | + | |
| 153 | + | |
| 154 | + <select id="selectByCompanyId" parameterType="Long" resultMap="CarInfoVoResult"> | |
| 155 | + <include refid="selectCarInfoForCompanyVo"/> | |
| 156 | + where car.company_id=#{companyId} | |
| 157 | + </select> | |
| 158 | + | |
| 152 | 159 | |
| 153 | 160 | <insert id="insertCarInfo" parameterType="CarInfo" useGeneratedKeys="true" keyProperty="id"> |
| 154 | 161 | insert into car_info | ... | ... |
trash-workFlow/src/main/java/com/trash/office/listener/ConferenceEndListener.java
| ... | ... | @@ -31,28 +31,13 @@ public class ConferenceEndListener implements ExecutionListener { |
| 31 | 31 | if("1".equals(status)){ |
| 32 | 32 | //设置为通过状态 |
| 33 | 33 | conference.setStatus(1); |
| 34 | - //添加后勤管理(通过状态) | |
| 34 | + //修改后勤管理(通过状态) | |
| 35 | 35 | conferenceMapper.updateConference(conference); |
| 36 | 36 | }else if("2".equals(status)){ |
| 37 | 37 | //设置为驳回状态 |
| 38 | 38 | conference.setStatus(2); |
| 39 | - //删除当前后勤管理 | |
| 40 | - conferenceMapper.deleteConferenceById(conference.getId()); | |
| 41 | - //添加后勤管理(驳回状态) | |
| 42 | - conferenceMapper.insertConference(conference); | |
| 43 | - //获取上传文件 | |
| 44 | - UploadFileMapper uploadFileMapper = SpringUtils.getBean(UploadFileMapper.class); | |
| 45 | - //查出旧的文件上传数据 | |
| 46 | - UploadFile uploadFile = new UploadFile(); | |
| 47 | - uploadFile.setTableName("conference"); | |
| 48 | - uploadFile.setTableNumber(id.toString()); | |
| 49 | - List<UploadFile> list = uploadFileMapper.selectUploadFileList(uploadFile); | |
| 50 | - //添加请假申请(驳回状态) | |
| 51 | - for (UploadFile uploadFile1 : list) { | |
| 52 | - //将上传文件的表id 设置为新的请假申请id | |
| 53 | - uploadFile1.setTableNumber(conference.getId().toString()); | |
| 54 | - uploadFileMapper.updateUploadFile(uploadFile1); | |
| 55 | - } | |
| 39 | + //修改后勤管理(驳回状态) | |
| 40 | + conferenceMapper.updateConference(conference); | |
| 56 | 41 | } |
| 57 | 42 | //流程历史存档 |
| 58 | 43 | WorkflowMapper workflowMapper = SpringUtils.getBean(WorkflowMapper.class); | ... | ... |
trash-workFlow/src/main/java/com/trash/office/listener/HandleAffairsEndListener.java
| ... | ... | @@ -70,23 +70,8 @@ public class HandleAffairsEndListener implements ExecutionListener { |
| 70 | 70 | //信访部门重置为null |
| 71 | 71 | handleAffairs.setDeptId(null); |
| 72 | 72 | handleAffairs.setDeptName(null); |
| 73 | - //删除当前办文办事 | |
| 74 | - handleAffairsMapper.deleteHandleAffairsById(id); | |
| 75 | - //添加办文办事(驳回状态) | |
| 76 | - handleAffairsMapper.insertHandleAffairs(handleAffairs); | |
| 77 | - //获取上传文件 | |
| 78 | - UploadFileMapper uploadFileMapper = SpringUtils.getBean(UploadFileMapper.class); | |
| 79 | - //查出旧的文件上传数据 | |
| 80 | - UploadFile uploadFile = new UploadFile(); | |
| 81 | - uploadFile.setTableName("handle_affairs"); | |
| 82 | - uploadFile.setTableNumber(id.toString()); | |
| 83 | - List<UploadFile> list = uploadFileMapper.selectUploadFileList(uploadFile); | |
| 84 | - //添加请假申请(驳回状态) | |
| 85 | - for (UploadFile uploadFile1 : list) { | |
| 86 | - //将上传文件的表id 设置为新的请假申请id | |
| 87 | - uploadFile1.setTableNumber(handleAffairs.getId().toString()); | |
| 88 | - uploadFileMapper.updateUploadFile(uploadFile1); | |
| 89 | - } | |
| 73 | + //修改办文办事(驳回状态) | |
| 74 | + handleAffairsMapper.updateHandleAffairs(handleAffairs); | |
| 90 | 75 | }else if ("3".equals(status)){ |
| 91 | 76 | //将部门id,部门名称,意见设置为null |
| 92 | 77 | handleAffairs.setOpinion(null); | ... | ... |
trash-workFlow/src/main/java/com/trash/office/listener/HandleAffairsTwoEndListener.java
| ... | ... | @@ -44,23 +44,7 @@ public class HandleAffairsTwoEndListener implements ExecutionListener { |
| 44 | 44 | //信访部门重置为null |
| 45 | 45 | handleAffairs.setDeptId(null); |
| 46 | 46 | handleAffairs.setDeptName(null); |
| 47 | - //删除当前办文办事 | |
| 48 | - handleAffairsMapper.deleteHandleAffairsById(id); | |
| 49 | - //添加办文办事(驳回状态) | |
| 50 | - handleAffairsMapper.insertHandleAffairs(handleAffairs); | |
| 51 | - //获取上传文件 | |
| 52 | - UploadFileMapper uploadFileMapper = SpringUtils.getBean(UploadFileMapper.class); | |
| 53 | - //查出旧的文件上传数据 | |
| 54 | - UploadFile uploadFile = new UploadFile(); | |
| 55 | - uploadFile.setTableName("handle_affairs"); | |
| 56 | - uploadFile.setTableNumber(id.toString()); | |
| 57 | - List<UploadFile> list = uploadFileMapper.selectUploadFileList(uploadFile); | |
| 58 | - //添加请假申请(驳回状态) | |
| 59 | - for (UploadFile uploadFile1 : list) { | |
| 60 | - //将上传文件的表id 设置为新的请假申请id | |
| 61 | - uploadFile1.setTableNumber(handleAffairs.getId().toString()); | |
| 62 | - uploadFileMapper.updateUploadFile(uploadFile1); | |
| 63 | - } | |
| 47 | + handleAffairsMapper.updateHandleAffairs(handleAffairs); | |
| 64 | 48 | } |
| 65 | 49 | workflowUtils.sendDataToHisTory(delegateExecution,state); |
| 66 | 50 | } | ... | ... |
trash-workFlow/src/main/java/com/trash/office/listener/LogisticsEndListener.java
| ... | ... | @@ -36,10 +36,8 @@ public class LogisticsEndListener implements ExecutionListener { |
| 36 | 36 | }else if("2".equals(status)){ |
| 37 | 37 | //设置为驳回状态 |
| 38 | 38 | logisticsManagement.setStatus(2); |
| 39 | - //删除当前后勤管理 | |
| 40 | - logisticsManagementMapper.deleteLogisticsManagementById(id); | |
| 41 | - //添加后勤管理(驳回状态) | |
| 42 | - logisticsManagementMapper.insertLogisticsManagement(logisticsManagement); | |
| 39 | + //修改当前后勤管理 | |
| 40 | + logisticsManagementMapper.updateLogisticsManagement(logisticsManagement); | |
| 43 | 41 | } |
| 44 | 42 | //流程历史存档 |
| 45 | 43 | WorkflowMapper workflowMapper = SpringUtils.getBean(WorkflowMapper.class); | ... | ... |
trash-workFlow/src/main/java/com/trash/office/listener/leaveEndListener.java
| ... | ... | @@ -45,22 +45,8 @@ public class leaveEndListener implements ExecutionListener { |
| 45 | 45 | //设置为驳回状态 |
| 46 | 46 | leaveApplication.setStatus(2); |
| 47 | 47 | //删除当前请假申请 |
| 48 | - leaveApplicationMapper.deleteLeaveApplicationById(id); | |
| 48 | + leaveApplicationMapper.updateLeaveApplication(leaveApplication); | |
| 49 | 49 | |
| 50 | - //获取上传文件 | |
| 51 | - UploadFileMapper uploadFileMapper = SpringUtils.getBean(UploadFileMapper.class); | |
| 52 | - //查出旧的文件上传数据 | |
| 53 | - UploadFile uploadFile = new UploadFile(); | |
| 54 | - uploadFile.setTableName("leave_application"); | |
| 55 | - uploadFile.setTableNumber(id.toString()); | |
| 56 | - List<UploadFile> list = uploadFileMapper.selectUploadFileList(uploadFile); | |
| 57 | - //添加请假申请(驳回状态) | |
| 58 | - leaveApplicationMapper.insertLeaveApplication(leaveApplication); | |
| 59 | - for (UploadFile uploadFile1 : list) { | |
| 60 | - //将上传文件的表id 设置为新的请假申请id | |
| 61 | - uploadFile1.setTableNumber(leaveApplication.getId().toString()); | |
| 62 | - uploadFileMapper.updateUploadFile(uploadFile1); | |
| 63 | - } | |
| 64 | 50 | } |
| 65 | 51 | |
| 66 | 52 | WorkflowMapper workflowMapper = SpringUtils.getBean(WorkflowMapper.class); | ... | ... |
trash-workFlow/src/main/java/com/trash/office/service/impl/LeaveApplicationServiceImpl.java
| ... | ... | @@ -4,6 +4,7 @@ import java.io.IOException; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | import java.util.stream.Collectors; |
| 6 | 6 | |
| 7 | +import com.trash.common.core.domain.entity.SysUser; | |
| 7 | 8 | import com.trash.common.utils.DateUtils; |
| 8 | 9 | import com.trash.common.utils.SecurityUtils; |
| 9 | 10 | import com.trash.common.utils.file.FileUploadUtils; |
| ... | ... | @@ -204,7 +205,8 @@ public class LeaveApplicationServiceImpl implements ILeaveApplicationService |
| 204 | 205 | * @param leaveApplication |
| 205 | 206 | */ |
| 206 | 207 | public void initiatingProcess(LeaveApplication leaveApplication){ |
| 207 | - List<String> roleIds = SecurityUtils.getLoginUser().getUser().getRoleIds(); | |
| 208 | + SysUser sysUser = SecurityUtils.getLoginUser().getUser(); | |
| 209 | + List<String> roleIds = sysUser.getPostIds(); | |
| 208 | 210 | Integer roleId = 0; |
| 209 | 211 | for (String role : roleIds){ |
| 210 | 212 | //如果是角色id为3的则为部长或部长以上 | ... | ... |