This commit is contained in:
BianLzhaoMin 2025-02-26 17:57:00 +08:00
commit 662388cffa
26 changed files with 234 additions and 41 deletions

View File

@ -23,6 +23,8 @@ public class OutSourceBean {
*/ */
private String evaluateTitle; private String evaluateTitle;
private String auditState;
/** /**
* 评价年月 * 评价年月
*/ */
@ -79,4 +81,6 @@ public class OutSourceBean {
private String createTime; private String createTime;
private String searchDate; private String searchDate;
private String isAuditTask; private String isAuditTask;
private String checkOne;
} }

View File

@ -218,6 +218,11 @@ public class OutsourcerEvaluateController extends BaseController<EvaluateSubBean
//过程中 暂不做处理 //过程中 暂不做处理
} }
if("1".equals(o.getType())){
outsourcerEvaluateDao.updateEvalStatus("3",o.getEvaluateId());
}else {
outsourcerEvaluateDao.updateEvalStatus("4",o.getEvaluateId());
}
return ar; return ar;
@ -295,7 +300,6 @@ public class OutsourcerEvaluateController extends BaseController<EvaluateSubBean
String evaluateType = o.getEvaluateType(); String evaluateType = o.getEvaluateType();
System.err.println("startId:"+startId+" ,evaluateType="+evaluateType); System.err.println("startId:"+startId+" ,evaluateType="+evaluateType);
if(startId == 0 && "1".equals(evaluateType)){ if(startId == 0 && "1".equals(evaluateType)){
int examineNum = outsourcerEvaluateDao.getExamineNumByEvaluateId(o.getEvaluateId(),"1"); int examineNum = outsourcerEvaluateDao.getExamineNumByEvaluateId(o.getEvaluateId(),"1");
if(examineNum == 0){ if(examineNum == 0){
//新增二级审核 //新增二级审核
@ -320,6 +324,11 @@ public class OutsourcerEvaluateController extends BaseController<EvaluateSubBean
//过程中 //过程中
} }
if("1".equals(o.getType())){
outsourcerEvaluateDao.updateEvalStatus("2",o.getEvaluateId());
}else {
outsourcerEvaluateDao.updateEvalStatus("4",o.getEvaluateId());
}
} catch (Exception e) { } catch (Exception e) {
ar.setFailMsg("审核失败"); ar.setFailMsg("审核失败");
@ -482,7 +491,11 @@ public class OutsourcerEvaluateController extends BaseController<EvaluateSubBean
//过程中 暂不做处理 //过程中 暂不做处理
} }
if("1".equals(o.getType())){
outsourcerEvaluateDao.updateEvalStatus("2",o.getEvaluateId());
}else {
outsourcerEvaluateDao.updateEvalStatus("4",o.getEvaluateId());
}
return ar; return ar;
} }

View File

@ -72,7 +72,7 @@ public interface InitiateEvaluateDao {
int insertInitiateEvaluateLink(@Param("arr") JSONArray jsonArray,@Param("id") String id); int insertInitiateEvaluateLink(@Param("arr") JSONArray jsonArray,@Param("id") String id);
int checkIsExistEvaluate(@Param("orgId") String orgId,@Param("evaluateDate") String evaluateDate); int checkIsExistEvaluate(InitiateEvaluateBean o);
/** /**
* 获取外包商发起评价详情 * 获取外包商发起评价详情
* @param bean * @param bean

View File

@ -141,4 +141,10 @@ public interface OutsourcerEvaluateDao {
int addMonthRank(@Param("bean") EvaluateDataBean bean,@Param("list") List<EvaluateDataBean> list); int addMonthRank(@Param("bean") EvaluateDataBean bean,@Param("list") List<EvaluateDataBean> list);
int isCheckTwoIsAudit(EvaluateDataBean o); int isCheckTwoIsAudit(EvaluateDataBean o);
/**
* 重新
* @param o
*/
void updateEvalStatus(@Param("status") String status,@Param("id")String id);
} }

View File

@ -9,6 +9,7 @@ import com.bonus.gs.sub.evaluate.evaluate.dao.InitiateEvaluateDao;
import com.bonus.gs.sub.evaluate.manager.model.SysUser; import com.bonus.gs.sub.evaluate.manager.model.SysUser;
import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes; import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes;
import com.bonus.gs.sub.evaluate.manager.utils.GlobalConst; import com.bonus.gs.sub.evaluate.manager.utils.GlobalConst;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -30,6 +31,7 @@ import java.util.stream.Stream;
* @description: * @description:
*/ */
@Service("initiateEvaluateService") @Service("initiateEvaluateService")
@Slf4j
public class InitiateEvaluateServiceImpl implements InitiateEvaluateService { public class InitiateEvaluateServiceImpl implements InitiateEvaluateService {
@Resource @Resource
private InitiateEvaluateDao dao; private InitiateEvaluateDao dao;
@ -59,13 +61,13 @@ public class InitiateEvaluateServiceImpl implements InitiateEvaluateService {
try { try {
String subInfo = o.getSubInfo(); String subInfo = o.getSubInfo();
JSONArray jsonArray = JSONArray.parseArray(subInfo); JSONArray jsonArray = JSONArray.parseArray(subInfo);
//判断是否已经发起过评价 int count = dao.checkIsExistEvaluate(o);
dao.deleteInitiateLink(o.getId());
int count = dao.checkIsExistEvaluate(o.getOrgId(), o.getEvaluateDate());
if (count > 0) { if (count > 0) {
ar.setFailMsg("当前事业部已经发起过评价,请勿重复发起!!!"); ar.setFailMsg("当前事业部在"+o.getEvaluateDate()+"已经发起过评价,请勿重复发起!!!");
return ar; return ar;
} }
//判断是否已经发起过评价
dao.deleteInitiateLink(o.getId());
String json = dao.getTemplationJson(o.getTemplateId()); String json = dao.getTemplationJson(o.getTemplateId());
JSONArray templationArr = JSONArray.parseArray(json); JSONArray templationArr = JSONArray.parseArray(json);
//循环templationArr 获取responsibleDepartment对其进行整合 //循环templationArr 获取responsibleDepartment对其进行整合
@ -150,6 +152,7 @@ public class InitiateEvaluateServiceImpl implements InitiateEvaluateService {
uniqueDeptIdList.get(i), ("0".equals(uniqueDeptIdList.get(i)) || "-1".equals(uniqueDeptIdList.get(i))) ? "1" : "0")); uniqueDeptIdList.get(i), ("0".equals(uniqueDeptIdList.get(i)) || "-1".equals(uniqueDeptIdList.get(i))) ? "1" : "0"));
ar.setRes(GlobalConst.SUCCEED); ar.setRes(GlobalConst.SUCCEED);
} catch (Exception e) { } catch (Exception e) {
log.error(e.toString(),e);
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
ar.setFailMsg(GlobalConst.DATA_FAIL); ar.setFailMsg(GlobalConst.DATA_FAIL);
return ar; return ar;

View File

@ -514,6 +514,7 @@ public class OutsourcerEvaluateServiceImpl implements OutsourcerEvaluateService
} }
} }
outsourcerEvaluateDao.deleteEvaluateData(o); outsourcerEvaluateDao.deleteEvaluateData(o);
outsourcerEvaluateDao.updateEvalStatus("2",o.getEvaluateId());
outsourcerEvaluateDao.saveEvaluateData(detailsList); outsourcerEvaluateDao.saveEvaluateData(detailsList);
o.setIsApprove("0"); o.setIsApprove("0");
o.setEvaluateType("3"); o.setEvaluateType("3");

View File

@ -0,0 +1,26 @@
package com.bonus.gs.sub.evaluate.outsourceEnterprise.beans;
import lombok.Data;
/**
* @author 黑子
*/
@Data
public class ImportUserDataVo {
private String name;
private String code;
private String createDay;
private String userName;
private String idCard;
private String userPhone;
private int row;
}

View File

@ -6,6 +6,7 @@ import com.bonus.gs.sub.evaluate.manager.utils.AesCbcUtils;
import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes; import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes;
import com.bonus.gs.sub.evaluate.manager.utils.GlobalConst; import com.bonus.gs.sub.evaluate.manager.utils.GlobalConst;
import com.bonus.gs.sub.evaluate.manager.utils.POIOutputHelperNumBer; import com.bonus.gs.sub.evaluate.manager.utils.POIOutputHelperNumBer;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ImportUserDataVo;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean; import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.dao.ViolationDao; import com.bonus.gs.sub.evaluate.outsourceEnterprise.dao.ViolationDao;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.service.ViolationService; import com.bonus.gs.sub.evaluate.outsourceEnterprise.service.ViolationService;
@ -193,6 +194,7 @@ public class ViolationController extends BaseController<ViolationBean> {
AjaxRes ars = getAjaxRes(); AjaxRes ars = getAjaxRes();
Integer result = 0; Integer result = 0;
int errorNum = 0; int errorNum = 0;
Map<String,ImportUserDataVo> map=new HashMap<String,ImportUserDataVo>();
try { try {
String fileName = file.getOriginalFilename(); String fileName = file.getOriginalFilename();
System.out.println("OriginalFilename" + fileName); System.out.println("OriginalFilename" + fileName);
@ -227,15 +229,14 @@ public class ViolationController extends BaseController<ViolationBean> {
Row row = hssfSheet.getRow(rownum); Row row = hssfSheet.getRow(rownum);
if (sheetRow != null && !isRowEmpty(sheetRow)) { if (sheetRow != null && !isRowEmpty(sheetRow)) {
// 先去判断 // 先去判断
ars = compareSaveData(sheetRow, rownum + 1); ars = compareSaveData(sheetRow, rownum + 1,map);
if (ars.getRes() == 2) { if (ars.getRes() == 2) {
ar.setFailMsg(ars.getResMsg()); ar.setFailMsg(ars.getResMsg());
result = 2; result = 2;
break; return ar;
} }
} }
} }
if (result != 2) { if (result != 2) {
for (int rownums = 2; rownums <= rowNum; rownums++) { for (int rownums = 2; rownums <= rowNum; rownums++) {
Row sheetRows = hssfSheet.getRow(rownums); Row sheetRows = hssfSheet.getRow(rownums);
@ -244,7 +245,6 @@ public class ViolationController extends BaseController<ViolationBean> {
if (ar.getRes() == 0) { if (ar.getRes() == 0) {
return ar; return ar;
} }
} }
} }
if (ar.getRes() == 1) { if (ar.getRes() == 1) {
@ -265,11 +265,10 @@ public class ViolationController extends BaseController<ViolationBean> {
return ar; return ar;
} }
private AjaxRes compareSaveData(Row sheetRow, int rownum) throws Exception { private AjaxRes compareSaveData(Row sheetRow, int rownum,Map<String,ImportUserDataVo> map) throws Exception {
AjaxRes ar = getAjaxRes(); AjaxRes ar = getAjaxRes();
try { try {
String enterpriseName = getValue(sheetRow.getCell(0)).trim(); String enterpriseName = getValue(sheetRow.getCell(0)).trim();
// String socialCreditCode = getValue(sheetRow.getCell(1)).trim().replace(".0", "");
String socialCreditCode = translateToPlainStr(getValue(sheetRow.getCell(1)).trim()).replace(".0", ""); String socialCreditCode = translateToPlainStr(getValue(sheetRow.getCell(1)).trim()).replace(".0", "");
String setTime = getValue(sheetRow.getCell(2)).trim(); String setTime = getValue(sheetRow.getCell(2)).trim();
String corporateName = getValue(sheetRow.getCell(3)).trim(); String corporateName = getValue(sheetRow.getCell(3)).trim();
@ -278,7 +277,68 @@ public class ViolationController extends BaseController<ViolationBean> {
if (StringUtils.isBlank(enterpriseName) || StringUtils.isBlank(socialCreditCode) || StringUtils.isBlank(setTime) || StringUtils.isBlank(corporateName) || StringUtils.isBlank(idCard) || StringUtils.isBlank(phone)) { if (StringUtils.isBlank(enterpriseName) || StringUtils.isBlank(socialCreditCode) || StringUtils.isBlank(setTime) || StringUtils.isBlank(corporateName) || StringUtils.isBlank(idCard) || StringUtils.isBlank(phone)) {
ar.setFailMsg("" + (rownum-1) + "行数据有误字段不能为空,导入失败"); ar.setFailMsg("" + (rownum-1) + "行数据有误字段不能为空,导入失败");
ar.setRes(2); ar.setRes(2);
return ar;
} }
ImportUserDataVo importUserDataVo=new ImportUserDataVo();
importUserDataVo.setName(enterpriseName);
Integer num=service.getImportDataCheck(importUserDataVo);
if (num!=null && num>0) {
ar.setFailMsg("" + (rownum-1) + "行企业名称已存在");
ar.setRes(2);
return ar;
}
importUserDataVo=new ImportUserDataVo();
importUserDataVo.setUserPhone(phone);
num=service.getImportDataCheck(importUserDataVo);
if (num!=null && num>0) {
ar.setFailMsg("" + (rownum-1) + "手机号已存在");
ar.setRes(2);
return ar;
}
importUserDataVo=new ImportUserDataVo();
importUserDataVo.setIdCard(idCard);
num=service.getImportDataCheck(importUserDataVo);
if (num!=null && num>0) {
ar.setFailMsg("" + (rownum-1) + "身份证号码已存在");
ar.setRes(2);
return ar;
}
importUserDataVo=new ImportUserDataVo();
importUserDataVo.setCode(socialCreditCode);
num=service.getImportDataCheck(importUserDataVo);
if (num!=null && num>0) {
ar.setFailMsg("" + (rownum-1) + "统一社会信用代码已存在");
ar.setRes(2);
return ar;
}
importUserDataVo.setRow(rownum-1);
ImportUserDataVo his=map.get(socialCreditCode);
if(his!=null){
ar.setFailMsg("" + (rownum-1) + "行与"+his.getRow()+"行统一社会信用代码重复!");
ar.setRes(2);
return ar;
}else{
map.put(socialCreditCode,importUserDataVo);
}
his=map.get(idCard);
if(his!=null){
ar.setFailMsg("" + (rownum-1) + "行与"+his.getRow()+"行身份证号码重复!");
ar.setRes(2);
return ar;
}else{
map.put(idCard,importUserDataVo);
}
his=map.get(phone);
if(his!=null){
ar.setFailMsg("" + (rownum-1) + "行与"+his.getRow()+"行手机号重复!");
ar.setRes(2);
}else{
map.put(idCard,importUserDataVo);
}
} catch (Exception e) { } catch (Exception e) {
logger.error(e.toString(), e); logger.error(e.toString(), e);
ar.setFailMsg("" + rownum + "行数据有误,导入失败"); ar.setFailMsg("" + rownum + "行数据有误,导入失败");

View File

@ -1,5 +1,6 @@
package com.bonus.gs.sub.evaluate.outsourceEnterprise.dao; package com.bonus.gs.sub.evaluate.outsourceEnterprise.dao;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ImportUserDataVo;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean; import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -42,4 +43,6 @@ public interface ViolationDao {
List<ViolationBean> getOutsourceEnterpriseByPage(ViolationBean o); List<ViolationBean> getOutsourceEnterpriseByPage(ViolationBean o);
int formValidation(@Param("enterpriseName") String enterpriseName, @Param("id") String id); int formValidation(@Param("enterpriseName") String enterpriseName, @Param("id") String id);
Integer getImportDataCheck(ImportUserDataVo dataVo);
} }

View File

@ -2,6 +2,7 @@ package com.bonus.gs.sub.evaluate.outsourceEnterprise.service;
import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes; import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ImportUserDataVo;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean; import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
@ -27,4 +28,13 @@ public interface ViolationService {
List<ViolationBean> exportOutsourceEnterprise(ViolationBean bean); List<ViolationBean> exportOutsourceEnterprise(ViolationBean bean);
List<ViolationBean> getOutsourceEnterpriseByPage(ViolationBean o); List<ViolationBean> getOutsourceEnterpriseByPage(ViolationBean o);
/**
* 导入数据校验
* @param socialCreditCode
* @param idCard
* @param phone
* @return
*/
Integer getImportDataCheck(ImportUserDataVo dataVo);
} }

View File

@ -2,6 +2,7 @@ package com.bonus.gs.sub.evaluate.outsourceEnterprise.service;
import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes; import com.bonus.gs.sub.evaluate.manager.utils.AjaxRes;
import com.bonus.gs.sub.evaluate.manager.utils.RegularCheckUtils; import com.bonus.gs.sub.evaluate.manager.utils.RegularCheckUtils;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ImportUserDataVo;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean; import com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean;
import com.bonus.gs.sub.evaluate.outsourceEnterprise.dao.ViolationDao; import com.bonus.gs.sub.evaluate.outsourceEnterprise.dao.ViolationDao;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -168,6 +169,18 @@ public class ViolationServiceImpl implements ViolationService {
return dao.getOutsourceEnterpriseByPage(o); return dao.getOutsourceEnterpriseByPage(o);
} }
/**
* 导入数据校验
* @param socialCreditCode
* @param idCard
* @param phone
* @return
*/
@Override
public Integer getImportDataCheck(ImportUserDataVo dataVo) {
return dao.getImportDataCheck(dataVo);
}
/** /**
* @param enterpriseName * @param enterpriseName
* @return * @return

View File

@ -151,6 +151,7 @@
r.proNum as projectNum, r.proNum as projectNum,
r.subNum as outsourcerNum, r.subNum as outsourcerNum,
ifnull(GROUP_CONCAT(ped.post_id),'') as deptId, ifnull(GROUP_CONCAT(ped.post_id),'') as deptId,
ped.check_one checkOne,
IF(ped.check_one is null, 0,IF( ped.check_one > 0, '0', '1' )) as isApprove, IF(ped.check_one is null, 0,IF( ped.check_one > 0, '0', '1' )) as isApprove,
ped.isReject as isReject, ped.isReject as isReject,
IFNULL(c.evaluateNum,0) as evaluateNum, IFNULL(c.evaluateNum,0) as evaluateNum,
@ -357,6 +358,7 @@
<select id="getEvaluateAuditList" resultType="com.bonus.gs.sub.evaluate.evaluate.beans.OutSourceBean"> <select id="getEvaluateAuditList" resultType="com.bonus.gs.sub.evaluate.evaluate.beans.OutSourceBean">
SELECT SELECT
per.evaluate_id AS id, per.evaluate_id AS id,
per.status auditState,
ped.details_id AS detailsId, ped.details_id AS detailsId,
per.template_id AS templateId, per.template_id AS templateId,
per.version AS version, per.version AS version,
@ -797,6 +799,10 @@
<update id="updateEvaluateRecordByEvaluateId"> <update id="updateEvaluateRecordByEvaluateId">
update pj_evaluate_record set task_status = #{taskStatus} where evaluate_id = #{evaluateId} update pj_evaluate_record set task_status = #{taskStatus} where evaluate_id = #{evaluateId}
</update> </update>
<update id="updateEvalStatus">
update pj_evaluate_record
set status=#{status} where evaluate_id=#{id}
</update>
</mapper> </mapper>

View File

@ -121,6 +121,7 @@
and ( and (
su.username like concat('%',#{keyWord},'%') or su.username like concat('%',#{keyWord},'%') or
su.phone like concat('%',#{keyWord},'%') or su.phone like concat('%',#{keyWord},'%') or
poi.name like concat('%',#{keyWord},'%') or
su.id_card like concat('%',#{keyWord},'%') su.id_card like concat('%',#{keyWord},'%')
) )
</if> </if>

View File

@ -230,6 +230,15 @@
INSTR(pte.manager,#{keyWord}) > 0 INSTR(pte.manager,#{keyWord}) > 0
) )
</if> </if>
<if test="evStatus == 4">
AND (pte.ev_status = '1' and (check_status=0 or check_status_two=0 ))
</if>
<if test="evStatus == 6">
AND (pte.ev_status = '1' and (check_status=1 and check_status_two=1 ))
</if>
<if test="evStatus == 7">
AND (pte.ev_status = '1' and (check_status=2 or check_status_two=2 ))
</if>
<if test="evStatus == 1"> <if test="evStatus == 1">
AND (pte.ev_status = '0' OR pte.ev_status IS NULL) AND (pte.ev_status = '0' OR pte.ev_status IS NULL)
</if> </if>

View File

@ -137,6 +137,9 @@
from pj_evaluate_record per from pj_evaluate_record per
where per.dept_id = #{orgId} where per.dept_id = #{orgId}
and per.year_and_month = #{evaluateDate} and is_active = '1' and per.year_and_month = #{evaluateDate} and is_active = '1'
<if test="id!=null and id!=''">
and evaluate_id !=#{id}
</if>
</select> </select>
<select id="getInitiateEvaluateDetails" <select id="getInitiateEvaluateDetails"
resultType="com.bonus.gs.sub.evaluate.evaluate.beans.InitiateEvaluateBean"> resultType="com.bonus.gs.sub.evaluate.evaluate.beans.InitiateEvaluateBean">

View File

@ -323,4 +323,22 @@
and id!=#{id} and id!=#{id}
</if> </if>
</select> </select>
<select id="getImportDataCheck" resultType="java.lang.Integer">
select count(1)
from project_assignment
where is_active=1
<if test="name!=null and name!=''">
and enterpriseName=#{name}
</if>
<if test="code!=null and code!=''">
and socialCreditCode=#{code}
</if>
<if test="userPhone!=null and userPhone!=''">
and phone=#{userPhone}
</if>
<if test="idCard!=null and idCard!=''">
and idCard=#{idCard}
</if>
</select>
</mapper> </mapper>

View File

@ -33,7 +33,7 @@ function search(type) {
curr: 1 curr: 1
}, },
where: { where: {
type:'audit', type: 'audit',
keyWord: $("#keyWord").val(), keyWord: $("#keyWord").val(),
evaluateDeptId: $("#evaluateDeptId").val(), evaluateDeptId: $("#evaluateDeptId").val(),
evStatus: $("#evStatus").val(), evStatus: $("#evStatus").val(),
@ -52,7 +52,7 @@ function initTable() {
, method: 'get' //方式默认是get , method: 'get' //方式默认是get
, toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档 , toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
, where: { , where: {
type:'audit', type: 'audit',
} //post请求必须加where post请求需要的参数 } //post请求必须加where post请求需要的参数
, cellMinWidth: 80 , cellMinWidth: 80
, cols: [[ //表头 , cols: [[ //表头
@ -64,15 +64,18 @@ function initTable() {
, {field: 'evaluateMonth', align: 'center', title: '评价年月'} , {field: 'evaluateMonth', align: 'center', title: '评价年月'}
, {field: 'projectNum', align: 'center', title: '项目数量'} , {field: 'projectNum', align: 'center', title: '项目数量'}
, {field: 'outsourcerNum', align: 'center', title: '外包商数量'} , {field: 'outsourcerNum', align: 'center', title: '外包商数量'}
, {field: 'isApprove', align: 'center', title: '评价状态', templet: d =>{ , {
if (d.rejectReason){ field: 'isApprove', align: 'center', title: '评价状态', templet: d => {
if (d.rejectReason) {
return '评价驳回' return '评价驳回'
}else { } else {
return Number(d.isApprove) === 0 ? '待评价' : (Number(d.isApprove) === 1 ? '已评价' : '') return Number(d.isApprove) === 0 ? '待评价' : (Number(d.isApprove) === 1 ? '已评价' : '')
} }
// Number(d.isApprove) === 0 ? '待评价' : (Number(d.isApprove) === 1 ? '已评价' : '') // Number(d.isApprove) === 0 ? '待评价' : (Number(d.isApprove) === 1 ? '已评价' : '')
}} }
, {field: 'status', align: 'center', title: '审核状态', templet: d => }
, {
field: 'status', align: 'center', title: '审核状态', templet: d =>
Number(d.status) === 0 ? '待审核' : (Number(d.status) === 1 ? '已审核' : '审核中') Number(d.status) === 0 ? '待审核' : (Number(d.status) === 1 ? '已审核' : '审核中')
} }
, {field: 'rejectReason', align: 'center', title: '驳回原因'} , {field: 'rejectReason', align: 'center', title: '驳回原因'}

View File

@ -43,7 +43,10 @@
let urlParams = new URLSearchParams(window.location.search); let urlParams = new URLSearchParams(window.location.search);
let tokens = urlParams.get('tokens'); // 假设 URL 为 https://example.com/path?query=1 let tokens = urlParams.get('tokens'); // 假设 URL 为 https://example.com/path?query=1
let loginName = urlParams.get('loginName'); let loginName = urlParams.get('loginName');
if(tokens && tokens!=='undefined'){
tokenVerify(tokens,loginName); tokenVerify(tokens,loginName);
}
// var token = localStorage.getItem("token"); // var token = localStorage.getItem("token");
// if (token != null && token.trim().length != 0) { // if (token != null && token.trim().length != 0) {
// $.ajax({ // $.ajax({

View File

@ -107,7 +107,7 @@
</div> </div>
<div class="layui-form-item" style="margin-top: 1%;"> <div class="layui-form-item" style="margin-top: 1%;">
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label"><span class="required_icon">*</span>姓名</label> <label class="layui-form-label"><span class="required_icon">*</span>班长姓名</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input class="layui-input" id="userName" name="userName" lay-verify="required" lay-affix="clear" <input class="layui-input" id="userName" name="userName" lay-verify="required" lay-affix="clear"
autocomplete="off" onclick="showPersonPage()" maxlength="30" readonly> autocomplete="off" onclick="showPersonPage()" maxlength="30" readonly>

View File

@ -163,8 +163,13 @@
// Number(d.evaluateNum) > 0 && d.rejectReason ? '评价驳回' : (Number(d.evaluateNum) > 0 ? '已评价' : '未评价') // Number(d.evaluateNum) > 0 && d.rejectReason ? '评价驳回' : (Number(d.evaluateNum) > 0 ? '已评价' : '未评价')
} }
, { , {
field: 'auditStatus', align: 'center', title: '审核状态', templet: d => field: 'auditStatus', align: 'center', title: '审核状态', templet:function(d){
Number(d.isApprove) > 0 && d.rejectReason ? '已驳回' : (Number(d.isApprove) > 0 ? '已通过' : (Number(d.evaluateNum) > 0 && d.isApprove == 0 ? '待审批' : '待评价')) if(d.auditState==='4' || d.auditState===4){
return '已驳回'
}else{
return Number(d.isApprove) > 0 && d.rejectReason ? '已驳回' : (Number(d.isApprove) === 1 ? '已通过' : (Number(d.evaluateNum) > 0 && d.isApprove == 0 ? '待审批' : '待评价'))
}
}
} }
, { field: 'rejectReason', align: 'center', title: '驳回原因' } , { field: 'rejectReason', align: 'center', title: '驳回原因' }
, { , {

View File

@ -304,7 +304,7 @@
search(1)*/ search(1)*/
if (data.res === 0) { if (data.res === 0) {
layer.close(idx); layer.close(idx);
layer.msg('导入失败' + data.resMsg, { icon: 1, time: 2000 }); layer.msg('导入失败' + data.resMsg, { icon: 2, time: 2000 });
} else { } else {
layer.close(idx); layer.close(idx);
layer.msg('导入成功', { icon: 1, time: 2000 }); layer.msg('导入成功', { icon: 1, time: 2000 });

View File

@ -65,7 +65,7 @@
templateId: getUrlParam('templateId'), templateId: getUrlParam('templateId'),
evaluateId: getUrlParam('evaluateId'), evaluateId: getUrlParam('evaluateId'),
deptId: deptId, deptId: deptId,
evaluateType: '2', evaluateType: '3',
type: 'auditAll', type: 'auditAll',
}, },
success: function (res) { success: function (res) {
@ -174,8 +174,6 @@
function allAudit(type) { function allAudit(type) {
let title = type === 1 ? '全部通过' : '全部驳回'; let title = type === 1 ? '全部通过' : '全部驳回';
layer.confirm('确定' + title + '吗?', function (index) { layer.confirm('确定' + title + '吗?', function (index) {
if (type === 1) { if (type === 1) {
$.ajax({ $.ajax({
url: ctxPath + '/outsourcer/allAudit', url: ctxPath + '/outsourcer/allAudit',
@ -185,7 +183,7 @@
templateId: getUrlParam('templateId'), templateId: getUrlParam('templateId'),
evaluateId: getUrlParam('evaluateId'), evaluateId: getUrlParam('evaluateId'),
type: type, type: type,
evaluateType: '2', evaluateType: '3',
deptId: getUrlParam('deptId'), deptId: getUrlParam('deptId'),
isApprove: type isApprove: type

View File

@ -28,10 +28,9 @@
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<select class="layui-select" id="evStatus" name="evStatus"> <select class="layui-select" id="evStatus" name="evStatus">
<option value="">请选择</option> <option value="">请选择评价状态</option>
<option value="1">待评价</option> <option value="1">待评价</option>
<option value="2">已评价</option> <option value="2">已评价</option>
<option value="3">评价驳回</option>
</select> </select>
</div> </div>
<input type="text" name="operType" id="operType" value="1" hidden> <input type="text" name="operType" id="operType" value="1" hidden>

View File

@ -28,10 +28,10 @@
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<select class="layui-select" id="evStatus" name="evStatus"> <select class="layui-select" id="evStatus" name="evStatus">
<option value="">请选择</option> <option value="">请选择审核状态</option>
<option value="1">待评价</option> <option value="4">待审核</option>
<option value="2">已评价</option> <option value="6">已通过</option>
<option value="3">评价驳回</option> <option value="7">评价驳回</option>
</select> </select>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">

View File

@ -28,7 +28,7 @@
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<select class="layui-select" id="evStatus" name="evStatus"> <select class="layui-select" id="evStatus" name="evStatus">
<option value="">请选择</option> <option value="">请选择评价状态</option>
<option value="1">待评价</option> <option value="1">待评价</option>
<option value="2">已评价</option> <option value="2">已评价</option>
<option value="3">评价驳回</option> <option value="3">评价驳回</option>

View File

@ -7,6 +7,15 @@
<link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css"> <link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css"> <link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
</head> </head>
<style>
#dt-table {
width: 100%;
text-align: center; /* 这会让整个表格内的文字居中 */
}
#dt-table th, #myTable td {
text-align: center; /* 这会确保每个单元格内的文字也居中 */
}
</style>
<body> <body>
<div> <div>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
@ -124,7 +133,7 @@
}, },
"dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-10 col-xs-12 hidden-xs'i><'col-xs-12 col-sm-10' p v>>", "dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-10 col-xs-12 hidden-xs'i><'col-xs-12 col-sm-10' p v>>",
"columns": [ "columns": [
{"data": "username", "defaultContent": ""}, {"data": "username", "defaultContent": "" ,"text-align":"center" },
{"data": "roleName", "defaultContent": ""}, {"data": "roleName", "defaultContent": ""},
{"data": "phone", "defaultContent": "", "render": function(data, type, row) { return maskSensitiveInfo(data, 'phone'); }}, {"data": "phone", "defaultContent": "", "render": function(data, type, row) { return maskSensitiveInfo(data, 'phone'); }},
{"data": "email", "defaultContent": ""}, {"data": "email", "defaultContent": ""},