modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/dao/WarehouseConfigItemDao.java
@@ -21,5 +21,5 @@ List<WarehouseConfigItem> getList(Map<String, Object> params); List<DictIstance> itemList(Long projectId); List<WarehouseConfigItem> itemList(Long projectId); } modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/model/WarehouseConfigItem.java
@@ -31,7 +31,7 @@ private String itemName; @ApiModelProperty(value = "配置项标识") private String itemDentify; private String itemIdentify; @ApiModelProperty(value = "版本") private String version; modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/WarehouseConfigItemService.java
@@ -47,7 +47,7 @@ return baseDao.getList(params); } public List<DictIstance> ConfigItemList(Long projectId) { public List<WarehouseConfigItem> ConfigItemList(Long projectId) { return baseDao.itemList(projectId); } } modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/controller/ItemCirculatOrderController.java
@@ -92,7 +92,7 @@ @PostMapping @ApiOperation("新增") @LogOperation("新增") public Result insert(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){ public Result<Long> insert(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){ //效验数据 ValidatorUtils.validateEntity(itemCirculatOrderDto.getCirculatOrder(), AddGroup.class, DefaultGroup.class); Map<String, String> map = new HashMap<>(); @@ -100,18 +100,18 @@ map.put("projectId",itemCirculatOrderDto.getProjectId().toString()); itemCirculatOrderDto.getCirculatOrder().setCode(sysCodeRuleService.getNewCode(map)); Boolean result = itemCirculatOrderService.save(itemCirculatOrderDto); return Result.ok(); return Result.ok(itemCirculatOrderDto.getCirculatOrder().getId()); } @PutMapping @ApiOperation("修改") @LogOperation("修改") public Result update(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){ public Result<Long> update(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){ //效验数据 ValidatorUtils.validateEntity(itemCirculatOrderDto.getCirculatOrder(), UpdateGroup.class, DefaultGroup.class); Boolean result = itemCirculatOrderService.save(itemCirculatOrderDto); return Result.ok(); return Result.ok(itemCirculatOrderDto.getCirculatOrder().getId()); } @DeleteMapping("deleteCirculat") modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/dto/ItemCirculatOrderDto.java
@@ -4,7 +4,7 @@ import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical; import com.zt.life.modules.project.model.*; import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; import com.zt.life.sys.dto.OssDto; import com.zt.modules.workflow.dto.FlowInfoDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -16,6 +16,9 @@ private Long id; private Long projectId; private Long circulatOrderid; private String stepIdMark; private FlowInfoDto flowInfoDto; @ApiModelProperty(value = "测试项目基本信息") private Project project; modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java
@@ -36,7 +36,10 @@ private String itemOther; @ApiModelProperty(value = "物品接收人") private String itemAccept; private String itemAcceptor; @ApiModelProperty(value = "物品接收人ID") private String itemAcceptorId; @ApiModelProperty(value = "物品接收时间") @JsonFormat(pattern = "yyyy-MM-dd") @@ -45,29 +48,37 @@ @ApiModelProperty(value = "物品接收情况说明") private String acceptSituation; @ApiModelProperty(value = "病毒库版本") private String virusLibraryVersion; @ApiModelProperty(value = "校准检测人") private String calibratDetect; private String calibratDetector; @ApiModelProperty(value = "校准检测人ID") private String calibratDetectorId; @ApiModelProperty(value = "校准检测时间") @JsonFormat(pattern = "yyyy-MM-dd") private Date detectDate; @ApiModelProperty(value = "校准检测情况说明") private String detectSituation; @ApiModelProperty(value = "物品入库人") private String warehouse; /* @ApiModelProperty(value = "物品入库人") private String warehousePerson; @ApiModelProperty(value = "物品入库时间") @JsonFormat(pattern = "yyyy-MM-dd") private Date warehouseDate; @ApiModelProperty(value = "物品入库情况") private String warehouseSituation; private String warehouseSituation;*/ @ApiModelProperty(value = "物品发放人") private String itemIssue; private String itemIssuer; @ApiModelProperty(value = "物品发放人ID") private String itemIssuerId; @ApiModelProperty(value = "物品发放时间") @JsonFormat(pattern = "yyyy-MM-dd") modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java
@@ -19,9 +19,12 @@ import com.zt.life.sys.service.SysOssConfigService; import com.zt.modules.coderule.service.SysCodeRuleService; import com.zt.modules.oss.service.SysOssService; import com.zt.modules.workflow.dto.FlowInfoDto; import com.zt.modules.workflow.service.WorkflowService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zt.common.db.query.QueryFilter; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -61,7 +64,8 @@ private ItemCirculatOrderTechnicalService technicalService; @Autowired private SoftwareTestOrderService softwareTestOrderService; private WorkflowService workflowService; /** * 分页查询 * @@ -112,6 +116,15 @@ } else { testAgencyInfoService.update(itemCirculatOrderDto.getTestAgencyInfo()); } Long bizId = itemCirculatOrderDto.getCirculatOrder().getId(); FlowInfoDto flowInfoDto = itemCirculatOrderDto.getFlowInfoDto(); if ("tj".equals(flowInfoDto.getSubmitType()) || "bl".equals(flowInfoDto.getSubmitType())) { if ("tj".equals(flowInfoDto.getSubmitType())) { workflowService.startFlow(flowInfoDto.getFlowCode(), bizId); } workflowService.approvePass(flowInfoDto.getFlowCode(), bizId, flowInfoDto.getStepIdMark()); } return true; } modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java
@@ -120,12 +120,14 @@ private String entrustSign; @ApiModelProperty(value = "委托方签字日期") @JsonFormat(pattern = "yyyy-MM-dd") private String entrustSignDate; @ApiModelProperty(value = "承托方签字") private String contractSign; @ApiModelProperty(value = "承托方签字日期") @JsonFormat(pattern = "yyyy-MM-dd") private String contractSignDate; @TableField(exist = false) modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
@@ -28,6 +28,7 @@ import java.io.FileNotFoundException; import java.io.UnsupportedEncodingException; import java.text.SimpleDateFormat; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -97,6 +98,8 @@ Map<String, String> map = new HashMap<>(); map.put("funCode", "software_test_order"); map.put("projectId",softwareTestOrderDto.getProjectId().toString()); /* DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); softwareTestOrderDto.getSoftwareTestOrder().getEntrustSignDate();*/ softwareTestOrderDto.getSoftwareTestOrder().setProjectId(softwareTestOrderDto.getProjectId()); softwareTestOrderDto.getSoftwareTestOrder().setCode(sysCodeRuleService.getNewCode(map)); baseDao.insert(softwareTestOrderDto.getSoftwareTestOrder()); modules/mainPart/src/main/resources/mapper/configItemWarehouse/ConfigItemWarehouseDao.xml
@@ -19,7 +19,7 @@ </select> <select id="itemList" resultType="com.zt.life.modules.configItemWarehouse.model.WarehouseCmAudit"> SET @row_number = 0; SELECT dd.dict_label AS name, SELECT dd.dict_label AS examineItem, (@row_number := @row_number + 1) AS no FROM sys_dict_type dt JOIN sys_dict_data dd ON dt.ID = dd.DICT_TYPE_ID modules/mainPart/src/main/resources/mapper/configItemWarehouse/WarehouseConfigItemDao.xml
@@ -16,17 +16,32 @@ ORDER BY ${orderBySql} </if> </select> <select id="itemList" resultType="com.zt.core.sys.dto.DictIstance"> SELECT m.*, p.secret_class FROM software_test_order_measured m JOIN software_test_order s ON s.id = m.order_id <select id="itemList" resultType="com.zt.life.modules.configItemWarehouse.model.WarehouseConfigItem"> SELECT p.secret_class, SUBSTRING(m.name, LOCATE('软件', m.name) , LENGTH(m.name)) AS itemName, m.identify AS version, m.name AS Item_identify FROM software_test_order s JOIN software_test_order_measured m ON s.project_id = ${projectId} JOIN project p ON p.id = ${projectId} <where> s.is_delete = 0 and m.is_delete = 0 <if test="projectId!=null"> and s.project_id = ${projectId} </if> </where> WHERE s.is_delete = 0 AND s.id = m.order_id UNION SELECT NULL AS secretClass, '软件测试委托单' AS itemName, NULL AS version, s.code AS itemIdentify FROM software_test_order s WHERE s.is_delete = 0 AND s.project_id = ${projectId} UNION SELECT NULL AS secretClass, '物品流转单' AS itemName, NULL AS version, i.code AS itemIdentify FROM item_circulat_order i WHERE i.is_delete = 0 AND i.project_id = ${projectId} </select> </mapper> web/packages/components/zt-dialog/src/zt-dialog.vue
@@ -12,14 +12,23 @@ @close="onClose"> <slot></slot> <template slot="footer"> <el-button @click="visible = false" v-show="editAble">{{ $t('cancel') }}</el-button> <el-button type="primary" @click="formSubmit()" v-preventReClick v-show="editAble && hasConfirm">{{ $t('confirm') }} </el-button> <!-- 确定 --> <el-button type="warning" @click="formSubmit()" v-show="stepMarker">提交 <template v-if="stepMarker && stepMarker.indexOf('first')>0"> <el-button type="warning" @click="formSubmit('zc')">暂存</el-button> <el-button type="warning" @click="formSubmit('tj')" v-if="">提交 </el-button> <el-button type="warning" @click="formSubmit()" v-show="!stepMarker">保存 </template> <template v-else-if="stepMarker"> <el-button type="warning" @click="formSubmit('zc')">暂存</el-button> <el-button type="warning" @click="formSubmit('bl')">办理</el-button> </template> <el-button type="primary" @click="formSubmit('qd')" v-preventReClick v-else-if="editAble && hasConfirm">{{ $t('confirm') }} </el-button> <el-button type="info" @click="close()" v-show="!editAble">{{ $t('close') }}</el-button> <el-button type="warning" @click="formSubmit('bc')" v-else-if="editAble">保存 </el-button> <el-button @click="visible = false" v-if="editAble||stepMarker">{{ $t('cancel') }}</el-button> <el-button type="info" @click="close()" v-else>{{ $t('close') }}</el-button> <slot name="footer"></slot> </template> </el-dialog> @@ -35,16 +44,14 @@ type: String, default: '1' }, stepMarker:{ }, stepMarker: {}, appendToBody: { type: Boolean, default: false }, hasConfirm: { type: Boolean, default: true default: false }, editAble: { type: Boolean, @@ -89,7 +96,7 @@ this.$parent.$refs.dataForm.resetFields() } this.editAble = isView !== true // 是否可编辑 // this.editAble = isView !== true // 是否可编辑 // 设置dialog父页面初始化表单 this.$parent.dataForm = cloneDeep(this.dataFormBack) @@ -109,12 +116,12 @@ this.open() }, // 表单提交 formSubmit() { formSubmit(submitType) { let dataForm = this.$parent.$refs.dataForm if (dataForm) { dataForm.validate(async valid => { if (valid) { this.$emit('confirm') this.$emit('confirm', submitType) } else { this.$nextTick(() => { let isError = document.getElementsByClassName('is-error') @@ -129,7 +136,7 @@ } }) } else { this.$emit('confirm') this.$emit('confirm', submitType) } }, open() { @@ -171,6 +178,7 @@ top:50% !important; left: 50% !important; transform: translate(-50%, -50%); .el-form > .el-form-item, .el-form .el-collapse-item__content > .el-form-item { width: 50%; float: left; @@ -186,6 +194,7 @@ top:50% !important; left: 50% !important; transform: translate(-50%, -50%); .el-form > .el-form-item, .el-form .el-collapse-item__content > .el-form-item { //width: 33.33333%; float: left; @@ -201,6 +210,7 @@ top:50% !important; left: 50% !important; transform: translate(-50%, -50%); .el-form > .el-form-item, .el-form .el-collapse-item__content > .el-form-item { //width: 33.33333%; float: left; web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
@@ -48,7 +48,7 @@ </el-table-column> <el-table-column prop="itemDentify" align="center" width="220" label="配置项标识"> <template v-slot="{ row }"> <el-input v-model="row.itemDentify" placeholder="配置项标识"></el-input> <el-input v-model="row.itemIdentify" placeholder="配置项标识"></el-input> </template> </el-table-column> <el-table-column prop="version" align="center" width="120" label="版本"> web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
@@ -1,6 +1,7 @@ <template> <zt-dialog ref="dialog" column="3" @confirm="formSubmit"> <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled" label-width="120px" class="circulationFormAuto"> <zt-dialog ref="dialog" column="3" :title="title" :stepMarker="stepMarker" @confirm="formSubmit"> <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled" label-width="120px" class="circulationFormAuto"> <div> <el-form-item label-width="60px" label="编号:" style="width:100%;margin-bottom: -5px"> <span>{{dataForm.circulatOrder.code}}</span> @@ -31,7 +32,8 @@ <div style="padding-left:5px;padding-right:5px;"> <div style="padding: 5px">物品技术资料及数量:</div> <div class="table-container"> <el-table ref="tableCirculatOrderList" class="el-software el-margin-top-bot" border :data="dataForm.technicalList" <el-table ref="tableCirculatOrderList" class="el-software el-margin-top-bot" border :data="dataForm.technicalList" stripe> <el-table-column prop="no" align="center" width="60" label="序号"> <template slot-scope="scope"> @@ -111,7 +113,7 @@ </div> <div class="el-border-left-right acceptDate" style="width: 20%;;height: 80px;"> <el-form-item style="width: 100%;padding-left:20px;margin:0;"> {{dataForm.circulatOrder.itemAccept}} {{dataForm.circulatOrder.itemAcceptor}} </el-form-item> </div> <div style="width: 52px;text-align: center;font-weight: 600"> @@ -130,11 +132,11 @@ <zt-dict v-model="dataForm.circulatOrder.acceptSituation" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> <el-form-item label="病毒库版本:" label-width="150px" style="width:100%;padding-left:20px;margin-bottom:0"> <el-input v-model="dataForm.circulatOrder.itemOther"></el-input> <el-input v-model="dataForm.circulatOrder.virusLibraryVersion"></el-input> </el-form-item> </div> </div> <div class="el-flexCirculationDialog el-border-bottom"> <!--<div class="el-flexCirculationDialog el-border-bottom"> <div style="width: 112px;text-align: center;font-weight: 600"> 校准/检测接收人 </div> @@ -159,14 +161,14 @@ <zt-dict v-model="dataForm.circulatOrder.cscs" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> </div> </div> </div>--> <div class="el-flexCirculationDialog el-border-bottom"> <div style="width: 112px;text-align: center;font-weight: 600"> 校准检测人 </div> <div class="el-border-left-right" style="width: 20%;height: 40px;"> <el-form-item style="width: 100%;padding-left:20px;margin:0;"> {{dataForm.circulatOrder.calibratDetect}} {{dataForm.circulatOrder.calibratDetector}} </el-form-item> </div> <div style="width: 52px;text-align: center;font-weight: 600"> @@ -186,7 +188,7 @@ </el-form-item> </div> </div> <div class="el-flexCirculationDialog el-border-bottom"> <!-- <div class="el-flexCirculationDialog el-border-bottom"> <div style="width: 112px;text-align: center;font-weight: 600"> 物品入库人 </div> @@ -211,14 +213,14 @@ <zt-dict v-model="dataForm.circulatOrder.warehouseSituation" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> </div> </div> </div>--> <div class="el-flexCirculationDialog el-border-bottom"> <div style="width: 112px;text-align: center;font-weight: 600"> 物品发放人 </div> <div class="el-border-left-right " style="width: 20%;height: 40px;"> <el-form-item style="width: 100%;padding-left:20px;margin:0;"> {{dataForm.circulatOrder.itemIssue}} {{dataForm.circulatOrder.itemIssuer}} </el-form-item> </div> <div style="width: 52px;text-align: center;font-weight: 600"> @@ -244,57 +246,10 @@ </div> <div class="el-border-left " style="width: 20%;height: 40px"> <el-form-item style="width: 100%;padding-left:20px;margin:0;"> {{dataForm.circulatOrder.itemAccept}} <el-input v-model="dataForm.circulatOrder.itemAcceptr"></el-input> </el-form-item> </div> </div> <!-- <div class="circulationContentWidth"> <el-form-item class="marginTopAndMarginBottom" label="物品接收人" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.itemAccept" placeholder="物品接收人"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom" label="时间" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.acceptDate" placeholder="时间"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom" label="情况说明" style="width: 32%"> <span>是否完成病毒查杀: <zt-dict v-model="dataForm.circulatOrder.acceptSituation" :radio="true" dict="is_or_not"></zt-dict> </span> <span>病毒库版本:<el-input v-model="dataForm.circulatOrder.acceptSituation" placeholder="病毒库版本"></el-input></span> </el-form-item> <el-form-item class="marginTopAndMarginBottom3" label="校准检测人" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.calibratDetect" placeholder="校准检测人"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom3" label="时间" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.detectDate" placeholder="时间"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom3" label="情况说明" style="width: 32%"> <!– <el-input v-model="dataForm.circulatOrder.detectSituation" placeholder="情况说明"></el-input>–> <zt-dict v-model="dataForm.circulatOrder.detectSituation" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="物品入库人" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.warehouse" placeholder="物品入库人"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="时间" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.warehouseDate" placeholder="时间"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%"> <!– <el-input v-model="dataForm.circulatOrder.warehouseSituation" placeholder="情况说明"></el-input>–> <zt-dict v-model="dataForm.circulatOrder.warehouseSituation" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="物品发放人" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.itemIssue" placeholder="物品发放人"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="时间" style="width: 32%"> <el-input v-model="dataForm.circulatOrder.issueDate" placeholder="时间"></el-input> </el-form-item> <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%"> <!– <el-input v-model="dataForm.circulatOrder.issueSituation" placeholder="情况说明"></el-input>–> <zt-dict v-model="dataForm.circulatOrder.issueSituation" :radio="true" dict="is_or_not"></zt-dict> </el-form-item> <el-form-item class="marginTopAndMarginBottom2 lastChild" label="备注" style="width: 100%"> <el-input v-model="dataForm.circulatOrder.remark" placeholder="备注"></el-input> </el-form-item> </div>--> </div> </el-form> </zt-dialog> @@ -304,6 +259,8 @@ export default { data() { return { stepMarker: '', title: '查看', dataForm: { id: '', circulatOrder:{ @@ -313,16 +270,18 @@ itemOther:'', acceptSituation:'', acceptDate: '', calibratDetect: '', calibratDetector: '', detectDate: '', detectSituation: '', warehouse: '', warehouseDate: '', warehouseSituation: '', itemIssue: '', itemIssuer: '', issueDate: '', issueSituation: '', remark: '', virusLibraryVersion:'', itemAcceptor:'' }, project: { softwareIdentity: '', @@ -331,7 +290,8 @@ testAgencyInfo: { agencyName:'', }, technicalList:[] technicalList: [], flowInfoDto: {} } } }, @@ -340,11 +300,24 @@ return index += 1 }, init(id,row){ if (id) { this.dataForm.id = id } else { this.dataForm.id = row.id } this.dataForm.projectId = row.projectId // this.dataForm.disabled this.getInfo() console.log(this.dataForm.id,this.dataForm.projectId,'params params') if (!this.dataForm.disabled) { if (!row.stepMarker) { this.stepMarker = 'wplz_first' this.title = '物品接收' } else { this.title = row.stepName this.stepMarker = row.stepMarker } } console.log(this.dataForm.id, this.dataForm.projectId, this.stepMarker, 'this.dataForm.id, this.dataForm.projectId,this.stepMarker') }, addCirculatRow(){ this.dataForm.technicalList.push({}) @@ -367,15 +340,35 @@ console.log(this.dataForm,"getInfo this.dataForm") }, // 表单提交 async formSubmit() { async formSubmit(submitType) { console.log(this.dataForm,"this.dataForm11111") if (submitType == 'tj' || submitType == 'bl') { let flowInfo = { flowCode: 'wplz', stepIdMark: this.stepMarker, submitType: submitType } this.dataForm.flowInfoDto = flowInfo; } let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/itemCirculatOrder/ItemCirculatOrder/', this.dataForm) if (res.success) { /* if (submitType == 'tj') { console.log(res, 'bbbb') let res2 = await this.$http.get('/wf/startFlow', submitForm) if (res2.success) { let res3 = await this.$http.get('/wf/approvePass', submitForm) if (res3.success) { } } } else if (submitType == 'bl') { let res2 = await this.$http.get('/wf/approvePass', submitForm) if (res2.success) { } }*/ await this.$tip.success() this.$refs.dialog.close() this.$emit('refreshDataList') } } } } @@ -385,12 +378,15 @@ display: flex; align-items: center } .circulationContentWidth > .el-form-item > .el-form-item__content { width: calc(100% - 120px); } .circulationContentWidth > .el-form-item.lastChild > .el-form-item__content { width: calc(100% - 142px); } .circulationFormAuto .marginTopAndMarginBottom { margin-top: 10px !important; margin-bottom: 0 !important; @@ -400,13 +396,16 @@ margin-top: -10px !important; margin-bottom: 10px !important; } .circulationFormAuto .marginTopAndMarginBottom3 { margin-top: 0 !important; margin-bottom: 10px !important; } .acceptDate> .el-form-item > .el-form-item__content { line-height: 80px; } .circulationFormAuto .el-radio { margin-right: 10px; } web/src/views/modules/project/Project-select.vue
@@ -1,5 +1,5 @@ <template> <zt-dialog ref="dialog" column="2" :hasConfirm="false"> <zt-dialog ref="dialog" column="2" title="选择项目" :editAble="false" :hasConfirm="false"> <el-card shadow="never" class="aui-card--fill"> <div class="mod-project-project}"> <zt-table-wraper ref="tableObj" query-url="/project/Project/page" delete-url="/project/Project" v-slot="{ table }"> @@ -32,7 +32,6 @@ v-adaptive="{bottomOffset:150}" @row-dblclick="selectedProject" border @selection-change="table.selectionChangeHandle"> <el-table-column type="selection" align="center" width="40"/> <el-table-column prop="entrustUnitName" label="委托单位名称"/> <el-table-column prop="developUnitName" label="开发单位名称"/> <el-table-column prop="softwareName" label="软件名称"/> web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
@@ -376,7 +376,7 @@ <div class="" style="width: 100%;"> <div class="el-flex" style="height: 40px"> <div style="width: 60%"> <zt-select v-model="dataForm.softwareTestOrder.contractSign" url="/sys/userEx/getUsersList" :multiple="true" :clearable="true" placeholder="承托方人员"/> <zt-select v-model="dataForm.softwareTestOrder.contractSign" url="/sys/userEx/getUsersList" placeholder="承托方人员"/> <!-- <span>{{ dataForm.contractSign }}</span>--> </div> <div class="el-flex" style="margin-left: 10%"> web/src/views/modules/sys/task/stay-task.vue
@@ -27,10 +27,17 @@ <el-table-column align="center" prop="finishTime" label="计划完成时间" width="160px"/> <!-- <el-table-column align="center" prop="statusName" label="状态" width="100px"/>--> <el-table-column align="center" prop="idleDays" label="停留时间(天)" width="150px"/> <zt-table-column-handle fixed="right" :table="table" :has-edit="false" :has-delete="false" :has-view="false" width="120px"> <zt-table-column-handle fixed="right" :table="table" :has-edit="false" :has-delete="false" :has-view="false" width="120px"> <template v-slot="{ row }"> <zt-table-button v-if="row.stepMarker!='hxsy_czsp'&&row.stepMarker!='hxsy_bzsp'&&row.stepMarker!='xbsy_czsp'&&row.stepMarker!='xbsy_bzsp'" @click="createTask(row)">办理</zt-table-button> <zt-table-button v-if="row.stepMarker=='hxsy_czsp'||row.stepMarker=='hxsy_bzsp'||row.stepMarker=='xbsy_czsp'||row.stepMarker=='xbsy_bzsp'" @click="createTask(row)">查阅</zt-table-button> <zt-table-button v-if="row.stepMarker!='hxsy_czsp'&&row.stepMarker!='hxsy_bzsp'&&row.stepMarker!='xbsy_czsp'&&row.stepMarker!='xbsy_bzsp'" @click="createTask(row)">办理 </zt-table-button> <zt-table-button v-if="row.stepMarker=='hxsy_czsp'||row.stepMarker=='hxsy_bzsp'||row.stepMarker=='xbsy_czsp'||row.stepMarker=='xbsy_bzsp'" @click="createTask(row)">查阅 </zt-table-button> <zt-table-button @click="flowChart(row)">流程图</zt-table-button> <zt-table-button v-if="row.flowCode === 'yearPlan2'" @click="getFlowTrack (row)">流程轨迹</zt-table-button> </template> @@ -43,7 +50,8 @@ @infinite="infiniteHandler" ref="infiniteLoading" force-use-infinite-wrapper=".alreadyTaskPushTable .el-table__body-wrapper"> <div slot="no-more" style="margin-top: 10px;margin-bottom: 10px;"><span v-if="dataListAll.length > pageSize">没有更多了</span></div> <div slot="no-more" style="margin-top: 10px;margin-bottom: 10px;"><span v-if="dataListAll.length > pageSize">没有更多了</span> </div> </infinite-loading> </el-table> <!-- 待办任务弹窗弹窗, 新增 / 修改 --> @@ -91,9 +99,7 @@ console.log(this.tableBottomOffset,'tableBottomOffset') } }, computed:{ }, computed: {}, components: { InfiniteLoading, ItemCirculatOrder @@ -209,11 +215,10 @@ async createTask(row) { console.log(row, "task row"); if (row.flowCode === 'wplz') { this.$refs.itemCirculatOrder.$refs.dialog.init(row) this.$refs.itemCirculatOrder.$refs.dialog.init(row.bizId, row) } else if (row.flowCode === 'aaa') { //this.$refs.itemCirculatOrder.$refs.dialog.init(row) } else { } else { if (row.stepRouterId === null) { this.$tip.alert("没有配置菜单id") return; web/src/views/modules/sys/task/taskCenter.vue
@@ -45,16 +45,16 @@ }, async tabClick(tab, event) { if (tab.index === '1') { let res = await this.$http.get('/newPlan/taskCenter/pageDone') let res = await this.$http.get('/task/taskCenter/pageDone') this.$refs.alreadyTask.getQuery() } if (tab.index === '0') { let res = await this.$http.get('/newPlan/taskCenter/page') let res = await this.$http.get('/task/taskCenter/page') this.$refs.stayTask.getStayTask() } }, async oneKeyDoneCy() { let res = await this.$http['put'](`/newPlan/taskCenter/oneKeyDoneCy`) let res = await this.$http['put'](`/task/taskCenter/oneKeyDoneCy`) if (res.success) { await this.$tip.success() this.$refs.stayTask.getStayTask() zt/core/src/main/java/com/zt/modules/workflow/dto/FlowInfoDto.java
New file @@ -0,0 +1,15 @@ package com.zt.modules.workflow.dto; import lombok.Data; import java.util.Date; @Data public class FlowInfoDto { String id; String bizId; String bizGroupId; String submitType; String flowCode; String stepIdMark; } zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java
@@ -355,6 +355,16 @@ if (existsUsers.size() == 0) { throw new RuntimeException("没有符合(" + wfDef.getName() + ")流程的下一步(" + currentStep.getName() + ")执行人!"); } String updateSql = currentStep.getUpdateSql(); if (org.apache.commons.lang3.StringUtils.isNotBlank(updateSql)) { updateSql = updateSql.replace("${bizId}", bizId.toString()); updateSql = updateSql.replace("${bizId}", bizId.toString()); updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); baseDao.exeSql(updateSql); } } else { taskParamDto.setUser(null); taskParamDto.setGroupId2(null); @@ -367,7 +377,8 @@ if (org.apache.commons.lang3.StringUtils.isNotBlank(updateSql)) { updateSql = updateSql.replace("${bizId}", bizId.toString()); updateSql = updateSql.replace("${bizId}", bizId.toString()); updateSql = updateSql.replace("${bizId}", bizId.toString()); updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); baseDao.exeSql(updateSql); }