提交代码

dev_xd
姜玉琦 2025-02-05 21:34:18 +08:00
parent 9f3b2b35b2
commit d45a66a2fe
24 changed files with 232 additions and 118 deletions

View File

@ -143,5 +143,10 @@
<version>${hutool.version}</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -1,30 +1,22 @@
package com.yanzhu.system.service.impl;
package com.yanzhu.common.core.utils;
import com.alibaba.fastjson.JSONObject;
import com.yanzhu.common.core.web.domain.AjaxResult;
import com.yanzhu.common.redis.service.RedisService;
import com.yanzhu.system.controller.ToolsController;
import com.alibaba.fastjson2.JSONObject;
import okhttp3.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@Service
public class OcrService {
@Autowired
private RedisService redisService;
final String TOKEN_URL="https://aip.baidubce.com/oauth/2.0/token";
final String OCR_URL="https://aip.baidubce.com/rest/2.0/ocr/v1/idcard";
final String APP_ID = "6283230";
final String APP_KEY="rS40xCCuGuVNFRopPI0jlMuj";
final String APP_SECRET="3bY7dADqQq3O4UpXpFA1FJAj6LN57QCS";
public static final String TOKEN_URL="https://aip.baidubce.com/oauth/2.0/token";
public static final String OCR_URL="https://aip.baidubce.com/rest/2.0/ocr/v1/idcard";
public static final String APP_ID = "6283230";
public static final String APP_KEY="rS40xCCuGuVNFRopPI0jlMuj";
public static final String APP_SECRET="3bY7dADqQq3O4UpXpFA1FJAj6LN57QCS";
public String getToken() {
public static String getToken() {
RequestBody body = new FormBody.Builder()
.add("grant_type", "client_credentials")
.add("client_id", APP_KEY)
@ -37,7 +29,7 @@ public class OcrService {
JSONObject jo=JSONObject.parseObject(result);
return jo.getString("access_token");
}
public String getResult(Request request) {
public static String getResult(Request request) {
OkHttpClient client = new OkHttpClient();
Response response;
try {
@ -54,7 +46,7 @@ public class OcrService {
}
private String getJson(JSONObject data, String key) {
private static String getJson(JSONObject data, String key) {
if(data!=null){
JSONObject jo=data.getJSONObject(key);
if(jo!=null){
@ -65,7 +57,7 @@ public class OcrService {
return "";
}
public Map<String,String> getFront(String url){
public static Map<String,String> getFront(String url){
String token = getToken();
RequestBody body = new FormBody.Builder()
.add("url", url)
@ -93,7 +85,7 @@ public class OcrService {
return map;
}
public Map<String,String> getBack(String url){
public static Map<String,String> getBack(String url){
String token = getToken();
RequestBody body = new FormBody.Builder()
.add("url", url)
@ -114,18 +106,21 @@ public class OcrService {
map.put("issuing",issuing);
return map;
}
public static void main(String[] args) {
//getFront();
getBack();
}
private static void getBack() {
String url="https://gss0.baidu.com/9fo3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/a8014c086e061d95103a068779f40ad162d9ca14.jpg";
Map o= new OcrService().getBack(url);
Map o= OcrService.getBack(url);
System.out.printf(o.toString());
}
private static void getFront() {
String url="http://62.234.3.186/statics/2025/01/19/4491f170cd1609142f9a6f097cbf681f_20250119000046A004.jpg";
Map o= new OcrService().getFront(url);
Map o= OcrService.getFront(url);
System.out.printf(o.toString());
}
}

View File

@ -34,11 +34,11 @@
<!--查询工作流操作日志-->
<select id="selectCommentByProcInsId" parameterType="string" resultType="Map">
select * from vw_flow_comment where procInstId = #{procInstId} order by startTime DESC
select * from vw_flow_comment where procInstId = #{procInstId} order by commentId DESC
</select>
<select id="selectLastCommentByProcInsId" parameterType="string" resultType="Map">
select * from vw_flow_comment where procInstId = #{procInstId} order by startTime DESC limit 1
select * from vw_flow_comment where procInstId = #{procInstId} order by commentId DESC limit 1
</select>
<!--查询工作流携带的参数-->

View File

@ -55,7 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<sql id="selectProProjectInfoSubdeptsUsersVo">
select psu.id, psu.par_id, psu.com_id, psu.project_id, pi.project_name, psu.sub_dept_id, psu.sub_dept_type, dic3.dict_label as sub_dept_type_name, psu.sub_dept_name, psu.sub_dept_power_path, psu.user_id, psu.user_post, psu.sub_dept_group,
psu.sub_dept_group_name, psu.user_name, psu.card_type, psu.card_code, psu.user_sex, psu.user_picture, psu.user_phone, psu.degree_grade, dic4.dict_label as degree_grade_name, psu.user_infos, psu.craft_type, psu.craft_post, psu.edu_status, psu.edu_file_path, psu.edu_date, psu.approve_status,
psu.sub_dept_group_name, psu.user_name, psu.card_type, psu.card_code, psu.user_sex, psu.user_picture, psu.user_phone, psu.degree_grade, dic4.dict_label as degree_grade_name, psu.user_infos, psu.craft_type, dic1.dict_label as craft_type_name, psu.craft_post, dic2.dict_label as craft_post_name, psu.edu_status, psu.edu_file_path, psu.edu_date, psu.approve_status,
psu.use_date, psu.use_status, psu.admit_guid, psu.qr_code, psu.sub_step, psu.illness_status, psu.sup_illness_status, psu.is_del, psu.create_by, psu.create_time, psu.update_by, psu.update_time,
psu.remark,psu.face_guid
from pro_project_info_subdepts_users psu

View File

@ -109,26 +109,15 @@ public class FlowBusinessKeyController extends BaseController {
*/
@GetMapping(value = "/queryCount")
public AjaxResult queryCount(FlowTaskEntity flowTaskEntity) {
LoginUser loginUser = SecurityUtils.getLoginUser();
if(SecurityUtils.isAdmin(loginUser.getUserid())){
// TODO超管查询所有申请...
if(Objects.nonNull(loginUser.getProjectDeptId())){
flowTaskEntity.setStartComId(Convert.toStr(loginUser.getProjectDeptId()));
}
if(Objects.nonNull(loginUser.getProjectId())){
flowTaskEntity.setStartProId(Convert.toStr(loginUser.getProjectId()));
}
}else if(SecurityUtils.isGSAdmin()){
// 公司管理员查询公司内的所有申请...
flowTaskEntity.setStartComId(Convert.toStr(loginUser.getProjectDeptId()));
if(Objects.nonNull(loginUser.getProjectId())){
flowTaskEntity.setStartProId(Convert.toStr(loginUser.getProjectId()));
}
}else if(SecurityUtils.isXMAdmin()){
// 公司管理员查询公司内的所有申请...
flowTaskEntity.setStartProId(Convert.toStr(loginUser.getProjectId()));
flowTaskEntity.setAssigneeId(SecurityUtils.getUserId());
List<SysRole> roles = SecurityUtils.getLoginUser().getSysUser().getRoles();
if(StringUtils.isNotEmpty(roles)){
List<Long> roleIds = roles.stream().map(SysRole::getRoleId).collect(Collectors.toList());
flowTaskEntity.setRoleIds(roleIds);
}else{
flowTaskEntity.setStartUserId(Convert.toStr(loginUser.getUserid()));
List<Long> roleIds = new ArrayList<>();
roleIds.add(0L);
flowTaskEntity.setRoleIds(roleIds);
}
return success(flowBusinessKeyService.quueryCount(flowTaskEntity));
}

View File

@ -0,0 +1,41 @@
package com.yanzhu.flowable.listener;
import com.yanzhu.common.core.constant.SecurityConstants;
import com.yanzhu.common.core.text.Convert;
import com.yanzhu.system.api.RemoteProService;
import lombok.extern.slf4j.Slf4j;
import org.flowable.engine.delegate.DelegateExecution;
import org.flowable.engine.delegate.ExecutionListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
/**
*
*
* Java
*
*
*
*
*
*
*
*
* @author JiangYuQi
* @date 2024/12/16
*/
@Slf4j
@Component
public class FlowGroSignListener implements ExecutionListener {
@Lazy
@Autowired
private RemoteProService remoteProService;
@Override
public void notify(DelegateExecution execution) {
log.info("班组审批签名执行监听器:{}", execution.getProcessInstanceBusinessKey());
remoteProService.subDeptsUserGroSign(Convert.toLong(execution.getProcessInstanceBusinessKey(),null), SecurityConstants.INNER);
}
}

View File

@ -0,0 +1,42 @@
package com.yanzhu.flowable.listener;
import com.yanzhu.common.core.constant.SecurityConstants;
import com.yanzhu.common.core.text.Convert;
import com.yanzhu.system.api.RemoteProService;
import lombok.extern.slf4j.Slf4j;
import org.flowable.common.engine.api.delegate.Expression;
import org.flowable.engine.delegate.DelegateExecution;
import org.flowable.engine.delegate.ExecutionListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
/**
*
*
* Java
*
*
*
*
*
*
*
*
* @author JiangYuQi
* @date 2024/12/16
*/
@Slf4j
@Component
public class FlowProSignListener implements ExecutionListener {
@Lazy
@Autowired
private RemoteProService remoteProService;
@Override
public void notify(DelegateExecution execution) {
log.info("项目审批签名执行监听器:{}", execution.getProcessInstanceBusinessKey());
remoteProService.subDeptsUserProSign(Convert.toLong(execution.getProcessInstanceBusinessKey(),null), SecurityConstants.INNER);
}
}

View File

@ -115,7 +115,6 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
}else{
taskService.addComment(taskVo.getTaskId(), taskVo.getInstanceId(), FlowComment.NORMAL.getType(), taskVo.getAssignee()+"重新提交流程申请!!");
}
taskService.addComment(taskVo.getTaskId(), taskVo.getInstanceId(), FlowComment.NORMAL.getType(), taskVo.getComment());
taskService.setAssignee(taskVo.getTaskId(), userId);
taskService.complete(taskVo.getTaskId(), taskVo.getVariables());
}

View File

@ -159,17 +159,6 @@ public class ProProjectInfoSubdeptsUsersController extends BaseController
return R.ok(AjaxResult.success());
}
/**
*
*/
@InnerAuth
@GetMapping("/subDeptsUserProSign/{busKey}")
public R<AjaxResult> subDeptsUserProSign(@PathVariable("busKey") Long busKey)
{
proProjectInfoSubdeptsUsersService.approveSubDeptsUser(busKey);
return R.ok(AjaxResult.success());
}
/**
*
*/
@ -177,7 +166,18 @@ public class ProProjectInfoSubdeptsUsersController extends BaseController
@GetMapping("/subDeptsUserGroSign/{busKey}")
public R<AjaxResult> subDeptsUserGroSign(@PathVariable("busKey") Long busKey)
{
proProjectInfoSubdeptsUsersService.approveSubDeptsUser(busKey);
proProjectInfoSubdeptsUsersService.approveSubDeptsUserGroSign(busKey);
return R.ok(AjaxResult.success());
}
/**
*
*/
@InnerAuth
@GetMapping("/subDeptsUserProSign/{busKey}")
public R<AjaxResult> subDeptsUserProSign(@PathVariable("busKey") Long busKey)
{
proProjectInfoSubdeptsUsersService.approveSubDeptsUserProSign(busKey);
return R.ok(AjaxResult.success());
}

View File

@ -112,6 +112,18 @@ public interface IProProjectInfoSubdeptsUsersService
*/
public void approveSubDeptsUser(Long id);
/**
*
* @param id
*/
public void approveSubDeptsUserGroSign(Long id);
/**
*
* @param id
*/
public void approveSubDeptsUserProSign(Long id);
/**
*
*

View File

@ -393,7 +393,8 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
// 劳务人员绑定班组信息
proProjectInfoSubdeptsUsers.setSubDeptGroup(parUsers.getSubDeptGroup());
proProjectInfoSubdeptsUsers.setSubDeptGroupName(parUsers.getSubDeptGroupName());
proProjectInfoSubdeptsUsers.setCraftType(parUsers.getCraftType());
proProjectInfoSubdeptsUsers.setCraftPost(parUsers.getCraftPost());
sysUser.setUserType(UserTypeEnums.FBLWRY.getCode());
}
}
@ -835,13 +836,35 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
log.error(e.getMessage());
}
}
// 审核文件签名()
proProjectInfoSubdeptsUsers.setUseStatus(UseStateEnums.IN.getCode());
proProjectInfoSubdeptsUsers.setApproveStatus(ApproveStatus.exempt.getCode());
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
//增加入场
// 人员入场信息
uniService.syncUniUser(proProjectInfoSubdeptsUsers);
}
/**
*
* @param id
*/
@Override
public void approveSubDeptsUserGroSign(Long id){
ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id);
}
/**
*
* @param id
*/
@Override
public void approveSubDeptsUserProSign(Long id){
ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id);
}
/**
* ...
* @param proSubdeptsUser

View File

@ -16,7 +16,7 @@ spring:
# 服务注册地址
server-addr: @discovery.server-addr@
# 服务分组
group: lijun
group: JiangYuQi
config:
# 配置中心地址
server-addr: @discovery.server-addr@

View File

@ -90,10 +90,7 @@
<version>3.6.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
</dependency>
</dependencies>
<build>

View File

@ -2,10 +2,8 @@ package com.yanzhu.system.controller;
import com.yanzhu.common.core.web.controller.BaseController;
import com.yanzhu.common.core.web.domain.AjaxResult;
import com.yanzhu.system.service.impl.OcrService;
import org.springframework.beans.factory.annotation.Autowired;
import com.yanzhu.common.core.utils.OcrService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@ -13,16 +11,13 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/tools")
public class ToolsController extends BaseController {
@Autowired
private OcrService ocrService;
@GetMapping("/id/front")
public AjaxResult getFront(String url) {
return AjaxResult.success(ocrService.getFront(url));
return AjaxResult.success(OcrService.getFront(url));
}
@GetMapping("/id/back")
public AjaxResult getBack(String url) {
return AjaxResult.success(ocrService.getBack(url));
return AjaxResult.success(OcrService.getBack(url));
}
}

View File

@ -34,6 +34,6 @@
</view>
<view class="wxlogin_btn">
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">微 信 登 录</button>
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">手机号快捷登录</button>
</view>
</view>

View File

@ -110,8 +110,8 @@ Page({
let files = res.data.eduFilePath.split('/');
res.data.eduFileName = files[files.length - 1];
}
if(res.data.user.userInfos){
res.data.user.userInfos = JSON.parse(res.data.user.userInfos);
if(res.data.userInfos){
res.data.userInfos = JSON.parse(res.data.userInfos);
}
this.setData({
subDeptUserData: res.data
@ -343,7 +343,7 @@ Page({
let paths = e.target.dataset.set;
let path = [];
paths.split(',').forEach(url => {
path.push(config.baseUrl + url);
path.push(config.baseImgUrl + url);
});
wx.previewImage({
urls: path,

View File

@ -162,7 +162,7 @@
<text wx:if="{{options.category=='1'}}" class="color_purple">委托代理人</text>
<text wx:if="{{options.category!='1'}}" class="color_purple">人员姓名</text>
</van-col>
<van-col span="16">{{subDeptUserData.user.nickName}}</van-col>
<van-col span="16">{{subDeptUserData.userName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
@ -171,7 +171,7 @@
<text wx:if="{{options.category=='1'}}" class="color_purple">代理人身份证</text>
<text wx:if="{{options.category!='1'}}" class="color_purple">身份证号码</text>
</van-col>
<van-col span="16">{{subDeptUserData.user.cardCode}}</van-col>
<van-col span="16">{{subDeptUserData.cardCode}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
@ -193,13 +193,13 @@
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">所属民族</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.nativePlace}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">详细地址</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.address}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.address}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
@ -211,8 +211,8 @@
<van-col span="16">
<view class="problem_list_info_con in-img-max">
<view class="in-img-div" wx:key="index">
<image bindtap='showImg' data-set="{{subDeptUserData.user.cardImgPos}}" src="{{imgBaseUrl+subDeptUserData.user.cardImgPos+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.user.cardImgInv}}" src="{{imgBaseUrl+subDeptUserData.user.cardImgInv+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.userInfos.cardImgPos}}" src="{{imgBaseUrl+subDeptUserData.userInfos.cardImgPos+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.userInfos.cardImgInv}}" src="{{imgBaseUrl+subDeptUserData.userInfos.cardImgInv+'.min.jpg'}}"></image>
</view>
</view>
</van-col>
@ -224,7 +224,7 @@
<van-col span="16">
<view class="problem_list_info_con in-img-max">
<view class="in-img-div" wx:key="index">
<image bindtap='showImg' data-set="{{subDeptUserData.user.userPicture}}" src="{{imgBaseUrl+subDeptUserData.user.userPicture+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.userPicture}}" src="{{imgBaseUrl+subDeptUserData.userPicture+'.min.jpg'}}"></image>
</view>
</view>
</van-col>
@ -245,37 +245,37 @@
<view class="inspect_overview_list">
<van-row>
<van-col span="8"><text class="color_purple">联系电话</text></van-col>
<van-col span="16">{{subDeptUserData.user.phonenumber}}</van-col>
<van-col span="16">{{subDeptUserData.userPhone}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">紧急联系人</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.emergencyContact}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.emergencyContact}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">紧急联系电话</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.contactPhone}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.contactPhone}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">开户行名称</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankName}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">开户行网点</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankOffice}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankOffice}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">工资银行卡号</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankCardNo}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankCardNo}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">

View File

@ -109,8 +109,8 @@ Page({
let files = res.data.eduFilePath.split('/');
res.data.eduFileName = files[files.length - 1];
}
if(res.data.user.userInfos){
res.data.user.userInfos = JSON.parse(res.data.user.userInfos);
if(res.data.userInfos){
res.data.userInfos = JSON.parse(res.data.userInfos);
}
this.setData({
subDeptUserData: res.data
@ -325,7 +325,7 @@ Page({
let paths = e.target.dataset.set;
let path = [];
paths.split(',').forEach(url => {
path.push(config.baseUrl + url);
path.push(config.baseImgUrl + url);
});
wx.previewImage({
urls: path,

View File

@ -162,7 +162,7 @@
<text wx:if="{{options.category=='1'}}" class="color_purple">委托代理人</text>
<text wx:if="{{options.category!='1'}}" class="color_purple">人员姓名</text>
</van-col>
<van-col span="16">{{subDeptUserData.user.nickName}}</van-col>
<van-col span="16">{{subDeptUserData.userName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
@ -171,7 +171,7 @@
<text wx:if="{{options.category=='1'}}" class="color_purple">代理人身份证</text>
<text wx:if="{{options.category!='1'}}" class="color_purple">身份证号码</text>
</van-col>
<van-col span="16">{{subDeptUserData.user.cardCode}}</van-col>
<van-col span="16">{{subDeptUserData.cardCode}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
@ -193,13 +193,13 @@
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">所属民族</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.nativePlace}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">详细地址</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.address}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.address}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
@ -211,8 +211,8 @@
<van-col span="16">
<view class="problem_list_info_con in-img-max">
<view class="in-img-div" wx:key="index">
<image bindtap='showImg' data-set="{{subDeptUserData.user.cardImgPos}}" src="{{imgBaseUrl+subDeptUserData.user.cardImgPos+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.user.cardImgInv}}" src="{{imgBaseUrl+subDeptUserData.user.cardImgInv+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.cardImgPos}}" src="{{imgBaseUrl+subDeptUserData.cardImgPos+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.cardImgInv}}" src="{{imgBaseUrl+subDeptUserData.cardImgInv+'.min.jpg'}}"></image>
</view>
</view>
</van-col>
@ -224,7 +224,7 @@
<van-col span="16">
<view class="problem_list_info_con in-img-max">
<view class="in-img-div" wx:key="index">
<image bindtap='showImg' data-set="{{subDeptUserData.user.userPicture}}" src="{{imgBaseUrl+subDeptUserData.user.userPicture+'.min.jpg'}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserData.userPicture}}" src="{{imgBaseUrl+subDeptUserData.userPicture+'.min.jpg'}}"></image>
</view>
</view>
</van-col>
@ -245,37 +245,37 @@
<view class="inspect_overview_list">
<van-row>
<van-col span="8"><text class="color_purple">联系电话</text></van-col>
<van-col span="16">{{subDeptUserData.user.phonenumber}}</van-col>
<van-col span="16">{{subDeptUserData.userPhone}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">紧急联系人</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.emergencyContact}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.emergencyContact}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
<van-row>
<van-col span="8"><text class="color_purple">紧急联系电话</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.contactPhone}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.contactPhone}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">开户行名称</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankName}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">开户行网点</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankOffice}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankOffice}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category=='4'}}">
<van-row>
<van-col span="8"><text class="color_purple">工资银行卡号</text></van-col>
<van-col span="16">{{subDeptUserData.user.userInfos.bankCardNo}}</van-col>
<van-col span="16">{{subDeptUserData.userInfos.bankCardNo}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">

View File

@ -360,8 +360,8 @@ Page({
//统计劳务人员信息
this.getSubDeptsUsers(app.globalData.useProjectId);
this.initSubDeptDaysCharts(app.globalData.useProjectId);
this.awaitTask();
}
this.awaitTask();
//今日出勤信息
if (app.globalData.subDeptUserData.subDeptType=='1') {
this.getSubDeptsAttendanceView(app.globalData.useProjectId);
@ -523,6 +523,18 @@ Page({
})
},
showImg:function(e){
let paths = e.target.dataset.set;
let path = [];
paths.split(',').forEach(url => {
path.push(config.baseImgUrl + url);
});
wx.previewImage({
urls: path,
current: path[0]
})
},
/**
* 劳务管理查看详细
*/

View File

@ -151,7 +151,7 @@
<view class="video_ai_survey">
<van-row>
<van-col span="10" class="qrcode">
<image src="{{imgBaseUrl+subDeptUserInfo.qrCode}}"></image>
<image bindtap='showImg' data-set="{{subDeptUserInfo.qrCode}}" src="{{imgBaseUrl+subDeptUserInfo.qrCode}}"></image>
</van-col>
<van-col span="14">
<view wx:if="{{subDeptUserInfo.userPost=='1'}}" class="qrtext"><text class="zz">项目经理 </text>扫描二维码登记信息,完成安全学习和在线考试,签署安全承诺书后可申请入场。</view>

View File

@ -141,7 +141,7 @@ Page({
this.setData({
"form.parId": options.PARID,
});
this.getProSubDeptsUser();
this.getProSubDeptsUser(options.PARID);
}
let title = "";
let _userPostList = [];
@ -174,7 +174,7 @@ Page({
title = "参建单位管理人员信息登记";
} else if (options.SIGID == '4') {
title = "参建单位劳务人员信息登记";
_userPost.push({
_userPostList.push({
"id": "4",
"text": "劳务人员"
});
@ -263,8 +263,8 @@ Page({
/**
* 查询单位上级人员信息
*/
getProSubDeptsUser() {
findProSubDeptsUserById(this.data.form.parId).then(res => {
getProSubDeptsUser(parId) {
findProSubDeptsUserById(parId).then(res => {
if (res.code == 200) {
this.setData({
parForm: res.data
@ -1512,11 +1512,13 @@ Page({
app.toast("请上传进场半身近照!");
return false;
}
if(userPost == '2' || userPost == '6'){
if (!form.subDeptPowerPath || form.subDeptPowerPath.length == 0) {
app.toast("请上传委托人单位委托书!");
return false;
}
}
if (!form.userName) {
app.toast("请填写姓名!");
return false;
@ -1654,6 +1656,8 @@ Page({
userInfos.bankName = _form.bankName;
userInfos.bankOffice = _form.bankOffice;
userInfos.bankCardNo = _form.bankCardNo;
userInfos.cardImgPos = _form.cardImgPos;
userInfos.cardImgInv = _form.cardImgInv;
_form.userInfos = JSON.stringify(userInfos);
wx.showLoading({mask: true,title: '正在处理'});
registerSubDeptsUsers(_form).then(res => {

View File

@ -12,7 +12,7 @@
<van-radio :name="clause" shape>同意数字工程系统《用户隐私协议》</van-radio>
</view> -->
<view class="wxlogin_btn">
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">微 信 一 键 登 录</button>
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">手机号快捷登录</button>
</view>
</view>
</view>
@ -357,7 +357,7 @@
<file-uploader bindimages="fileUploadUserPicture" limit="{{limit}}" fileUrlArray="{{form.userPicture}}"></file-uploader>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_list" wx:if="userPost=='6'">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">劳务单位委托书
<text style="font-size: small; color: antiquewhite;">[需加盖劳务单位的公章委托书照片]</text>
</view>

View File

@ -11,7 +11,7 @@
{
"name": "pages/project_qr/index",
"pathName": "pages/project_qr/index",
"query": "QRPID=132&SIGID=3&PARID=35",
"query": "QRPID=132&SIGID=4&PARID=40",
"launchMode": "default",
"scene": null
},