增加表单绑定流程实例方法

This commit is contained in:
wanggeng 2022-03-23 11:42:47 +08:00
parent 944caa2c8a
commit 457849095a
8 changed files with 64 additions and 2 deletions

View File

@ -25,6 +25,8 @@ public interface IFormReportDao {
void update(Map<String, Object> params) throws UpdateException; void update(Map<String, Object> params) throws UpdateException;
void updateProcessInstanceId(Map<String, Object> params) throws UpdateException;
Map<String, Object> get(Map<String, Object> params) throws SearchException; Map<String, Object> get(Map<String, Object> params) throws SearchException;
List<Map<String, Object>> list(Map<String, Object> queryParams) throws SearchException; List<Map<String, Object>> list(Map<String, Object> queryParams) throws SearchException;

View File

@ -67,6 +67,7 @@ public interface IFormService {
/** /**
* 修改新增页面代码 * 修改新增页面代码
*
* @param formId * @param formId
* @param savePageCode * @param savePageCode
*/ */
@ -74,6 +75,7 @@ public interface IFormService {
/** /**
* 修改修改页面代码 * 修改修改页面代码
*
* @param formId * @param formId
* @param updatePageCode * @param updatePageCode
*/ */
@ -81,6 +83,7 @@ public interface IFormService {
/** /**
* 修改查看页面代码 * 修改查看页面代码
*
* @param formId * @param formId
* @param showPageCode * @param showPageCode
*/ */
@ -88,6 +91,7 @@ public interface IFormService {
/** /**
* 修改App新增页面代码 * 修改App新增页面代码
*
* @param formId * @param formId
* @param appSavePageCode * @param appSavePageCode
*/ */
@ -95,6 +99,7 @@ public interface IFormService {
/** /**
* 修改App修改页面代码 * 修改App修改页面代码
*
* @param formId * @param formId
* @param appUpdatePageCode * @param appUpdatePageCode
*/ */
@ -102,6 +107,7 @@ public interface IFormService {
/** /**
* 修改App详情页面代码 * 修改App详情页面代码
*
* @param formId * @param formId
* @param appShowPageCode * @param appShowPageCode
*/ */
@ -233,6 +239,14 @@ public interface IFormService {
*/ */
List<FormDTO> list(Map<String, Object> params); List<FormDTO> list(Map<String, Object> params);
/**
* 列表
*
* @param formIds 表单ID列表
* @return
*/
List<FormDTO> listByIds(List<String> formIds);
/** /**
* 列表 * 列表
* *
@ -249,5 +263,4 @@ public interface IFormService {
*/ */
SuccessResultList<List<FormDTO>> listPage(ListPage page); SuccessResultList<List<FormDTO>> listPage(ListPage page);
} }

View File

@ -105,6 +105,7 @@ public class FormDesignServiceImpl extends DefaultBaseService implements IFormDe
StringBuffer createTableSB = new StringBuffer("CREATE TABLE `").append(tableName).append("`("); StringBuffer createTableSB = new StringBuffer("CREATE TABLE `").append(tableName).append("`(");
createTableSB.append("`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,"); createTableSB.append("`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,");
createTableSB.append("`uid` char(36) NOT NULL,"); createTableSB.append("`uid` char(36) NOT NULL,");
createTableSB.append("`process_instance_id` char(36) DEFAULT NULL,");
for (FormFieldVO formFieldVO : formFieldVOs) { for (FormFieldVO formFieldVO : formFieldVOs) {
createTableSB.append("`").append(formFieldVO.getFieldName()).append("` ").append(formFieldVO.getFieldType()).append(" NOT NULL COMMENT '").append(formFieldVO.getFieldExplain()).append("',"); createTableSB.append("`").append(formFieldVO.getFieldName()).append("` ").append(formFieldVO.getFieldType()).append(" NOT NULL COMMENT '").append(formFieldVO.getFieldExplain()).append("',");
} }

View File

@ -242,6 +242,13 @@ public class FormServiceImpl extends DefaultBaseService implements IFormService
return formDao.list(params); return formDao.list(params);
} }
@Override
public List<FormDTO> listByIds(List<String> formIds) {
Map<String, Object> params = getHashMap(2);
params.put("formIds", formIds);
return list(params);
}
@Override @Override
public List<FormDTO> listPO(Map<String, Object> params) { public List<FormDTO> listPO(Map<String, Object> params) {
params = params == null ? getHashMap(2) : params; params = params == null ? getHashMap(2) : params;

View File

@ -17,14 +17,19 @@ public interface IFormReportService {
void save(String formCode, Integer formVersion, Map<String, Object> params); void save(String formCode, Integer formVersion, Map<String, Object> params);
String saveAndReturnId(String formCode, Integer formVersion, Map<String, Object> params);
void remove(String formCode, Integer formVersion, List<String> uids); void remove(String formCode, Integer formVersion, List<String> uids);
void update(String formCode, Integer formVersion, String uid, Map<String, Object> params); void update(String formCode, Integer formVersion, String uid, Map<String, Object> params);
void updateProcessInstanceId(String formCode, Integer formVersion, String uid, String processInstanceId);
Map<String, Object> get(String formCode, Integer formVersion, String uid); Map<String, Object> get(String formCode, Integer formVersion, String uid);
List<Map<String, Object>> list(String formCode, Integer formVersion, Map<String, Object> params); List<Map<String, Object>> list(String formCode, Integer formVersion, Map<String, Object> params);
SuccessResultList<List<Map<String, Object>>> listPage(String formCode, Integer formVersion, ListPage page); SuccessResultList<List<Map<String, Object>>> listPage(String formCode, Integer formVersion, ListPage page);
} }

View File

@ -33,10 +33,16 @@ public class FormReportServiceImpl extends DefaultBaseService implements IFormRe
@Override @Override
public void save(String formCode, Integer formVersion, Map<String, Object> params) { public void save(String formCode, Integer formVersion, Map<String, Object> params) {
saveAndReturnId(formCode, formVersion, params);
}
@Override
public String saveAndReturnId(String formCode, Integer formVersion, Map<String, Object> params) {
String uid = UUIDUtil.getUUID();
List<String> inserts = new ArrayList<>(); List<String> inserts = new ArrayList<>();
List<Object> values = new ArrayList<>(); List<Object> values = new ArrayList<>();
inserts.add("uid"); inserts.add("uid");
values.add(UUIDUtil.getUUID()); values.add(uid);
for (Map.Entry<String, Object> kv : params.entrySet()) { for (Map.Entry<String, Object> kv : params.entrySet()) {
inserts.add(kv.getKey()); inserts.add(kv.getKey());
values.add(kv.getValue()); values.add(kv.getValue());
@ -60,6 +66,7 @@ public class FormReportServiceImpl extends DefaultBaseService implements IFormRe
insertParams.put("inserts", inserts); insertParams.put("inserts", inserts);
insertParams.put("values", values); insertParams.put("values", values);
formReportDao.save(insertParams); formReportDao.save(insertParams);
return uid;
} }
@Override @Override
@ -94,6 +101,17 @@ public class FormReportServiceImpl extends DefaultBaseService implements IFormRe
formReportDao.update(updateParams); formReportDao.update(updateParams);
} }
@Override
public void updateProcessInstanceId(String formCode, Integer formVersion, String uid, String processInstanceId) {
Map<String, Object> params = getHashMap(8);
params.put("formCode", formCode);
params.put("formVersion", formVersion);
params.put("uid", uid);
params.put("processInstanceId", processInstanceId);
formReportDao.updateProcessInstanceId(params);
}
@Override @Override
public Map<String, Object> get(String formCode, Integer formVersion, String uid) { public Map<String, Object> get(String formCode, Integer formVersion, String uid) {
Map<String, Object> params = getHashMap(2); Map<String, Object> params = getHashMap(2);

View File

@ -300,6 +300,13 @@
AND AND
form_name LIKE CONCAT('%', #{keywords}, '%') form_name LIKE CONCAT('%', #{keywords}, '%')
</if> </if>
<if test="formIds != null and formIds.size > 0">
AND
form_id IN
<foreach collection="formIds" index="index" open="(" separator="," close=")">
#{formIds[${index}]}
</foreach>
</if>
</select> </select>
<!-- 列表 --> <!-- 列表 -->

View File

@ -42,6 +42,15 @@
uid = #{uid} uid = #{uid}
</update> </update>
<update id="updateProcessInstanceId" parameterType="map">
UPDATE
df_${formCode}_v${formVersion}
SET
process_instance_id = #{processInstanceId}
WHERE
uid = #{uid}
</update>
<!-- 详情 --> <!-- 详情 -->
<select id="get" parameterType="map" resultType="map"> <select id="get" parameterType="map" resultType="map">
SELECT SELECT