代码提交

This commit is contained in:
liang.chao 2025-07-21 15:04:30 +08:00
parent 476d785dba
commit f74f19c235
3 changed files with 20 additions and 6 deletions

View File

@ -68,6 +68,7 @@ public class InitiateEvaluateBean {
private String endDate;
private String proName;
private String proIdStr;
private String subName;
private List<SubBean> subList;

View File

@ -61,11 +61,20 @@ public class InitiateEvaluateServiceImpl implements InitiateEvaluateService {
try {
String subInfo = o.getSubInfo();
JSONArray jsonArray = JSONArray.parseArray(subInfo);
List<String> proIdList = new ArrayList<>();
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
String proId = obj.getString("proId");
o.setProId(proId);
int count = dao.checkIsExistEvaluate(o);
if (count > 0) {
ar.setFailMsg("当前事业部在" + o.getEvaluateDate() + "已经发起过评价,请勿重复发起!!!");
ar.setFailMsg("当前" + obj.getString("proName") + "" + o.getEvaluateDate() + "已经发起过评价,请勿重复发起!!!");
return ar;
}
proIdList.add(proId);
}
// 转换为逗号分隔的字符串
String proIdStr = String.join(",", proIdList);
//判断是否已经发起过评价
dao.deleteInitiateLink(o.getId());
String json = dao.getTemplationJson(o.getTemplateId());
@ -136,9 +145,11 @@ public class InitiateEvaluateServiceImpl implements InitiateEvaluateService {
String formattedDate = outputFormat.format(inputFormat.parse(o.getEvaluateDate()));
o.setTemplateTitle(formattedDate + "外包商对标考核统计表");
if ("add".equals(o.getType())) {
o.setProIdStr(proIdStr);
dao.insertInitiateEvaluate(o);
dao.insertInitiateEvaluateLink(jsonArray, o.getId());
} else {
o.setProIdStr(proIdStr);
dao.updateInitiateEvaluate(o);
dao.insertInitiateEvaluateLink(jsonArray, o.getId());
}

View File

@ -3,8 +3,8 @@
<mapper namespace="com.bonus.gs.sub.evaluate.evaluate.dao.InitiateEvaluateDao">
<insert id="insertInitiateEvaluate" useGeneratedKeys="true" keyProperty="id">
insert into pj_evaluate_record
(dept_id, evaluate_name, template_id, version, year_and_month, task_status, is_active)
values (#{orgId}, #{templateTitle}, #{templateId}, #{version}, #{evaluateDate}, 0, 1)
(dept_id, evaluate_name, template_id, version, year_and_month, task_status, is_active,pro_id)
values (#{orgId}, #{templateTitle}, #{templateId}, #{version}, #{evaluateDate}, 0, 1, #{proIdStr})
</insert>
<insert id="insertInitiateEvaluateLink">
insert into pj_evaluate_sub
@ -25,6 +25,7 @@
evaluate_name = #{templateTitle},
template_id = #{templateId},
year_and_month = #{evaluateDate},
pro_id = #{proIdStr},
version = #{version}
where evaluate_id = #{id}
</update>
@ -143,6 +144,7 @@
from pj_evaluate_record per
where per.dept_id = #{orgId}
and per.year_and_month = #{evaluateDate} and is_active = '1'
and FIND_IN_SET(#{proId}, pro_id) > 0
<if test="id!=null and id!=''">
and evaluate_id !=#{id}
</if>