def onSave(self): # 矿区名称 region_name = unicode(self.ui.region.currentText()).encode('utf-8') # 根据示范矿区的名称反查内部的虚拟矿井和虚拟煤层 mine = CbmClientHelper.GetSampleMineOfRegion(region_name) if mine.id <= 0: UiHelper.MessageBox(u'sorry,出了点问题,请联系技术人员(错误码:S3)!') return coal = CbmClientHelper.GetSampleCoalOfRegion(region_name) if coal.id <= 0: UiHelper.MessageBox(u'sorry,出了点问题,请联系技术人员(错误码:S4)!') return # 保存矿井数据 mine.topo_geo = self.ui.topo_geo.currentIndex() + 1 mine.hydr_geo = self.ui.hydr_geo.currentIndex() + 1 mine.ground_condition = int(self.ui.ground_cond.isChecked()) if not SQLClientHelper.UpdateMine(mine): UiHelper.MessageBox(u'更新矿井数据失败(错误码:S5)!') return # 读取界面上的数据保存到煤层对象 coal.thick, ok = self.ui.thick.text().toDouble() coal.rank = self.ui.rank.currentIndex() + 1 coal.minable = int(self.ui.minable.isChecked()) coal.dip_angle, ok = self.ui.dip_angle.text().toDouble() coal.hw, ok = self.ui.hw.text().toDouble() coal.f_value, ok = self.ui.f_value.text().toDouble() coal.pressure, ok = self.ui.pressure.text().toDouble() coal.gas_content, ok = self.ui.gas_content.text().toDouble() coal.permeability_k, ok = self.ui.permeability_k.text().toDouble() coal.res_abundance = self.ui.res_abundance.currentIndex() + 1 coal.complexity = self.ui.complexity.currentIndex() + 1 coal.mine_index, ok = self.ui.mine_index.text().toDouble() coal.var_coeff, ok = self.ui.var_coeff.text().toDouble() coal.czh, ok = self.ui.caving_zone_height.text().toDouble() coal.stability = self.ui.stability.currentIndex() + 1 coal.layer_gap, ok = self.ui.layer_gap.text().toDouble() coal.influence_factor, ok = self.ui.influence_factor.text().toDouble() # 提交到数据库 if not SQLClientHelper.UpdateCoal(coal): UiHelper.MessageBox(u'更新煤层数据失败(错误码:S6)!') #关闭对话框并返回1 # self.accept() else: UiHelper.MessageBox(u'恭喜您,数据更新成功啦!')
def onMineRegionChanged(self, index): if index < 0: return # 矿区名称 region_name = unicode(self.ui.region.currentText()).encode('utf-8') # 根据示范矿区的名称反查内部的虚拟矿井和虚拟煤层 mine = CbmClientHelper.GetSampleMineOfRegion(region_name) if mine.id <= 0: UiHelper.MessageBox(u'sorry,出了点问题,请联系技术人员(错误码:S1)!') return coal = CbmClientHelper.GetSampleCoalOfRegion(region_name) if coal.id <= 0: UiHelper.MessageBox(u'sorry,出了点问题,请联系技术人员(错误码:S2)!') return # 填充矿井数据 self.ui.topo_geo.setCurrentIndex(mine.topo_geo - 1) self.ui.hydr_geo.setCurrentIndex(mine.hydr_geo - 1) self.ui.ground_cond.setChecked(mine.ground_condition != 0) # 填充煤层数据 self.ui.thick.setText(u'%.1f' % coal.thick) self.ui.rank.setCurrentIndex(coal.rank - 1) self.ui.minable.setChecked(coal.minable != 0) self.ui.dip_angle.setText(u'%.1f' % coal.dip_angle) self.ui.hw.setText(u'%.1f' % coal.hw) self.ui.f_value.setText(u'%.2f' % coal.f_value) self.ui.pressure.setText(u'%.1f' % coal.pressure) self.ui.gas_content.setText(u'%.1f' % coal.gas_content) self.ui.permeability_k.setText(u'%.1f' % coal.permeability_k) self.ui.res_abundance.setCurrentIndex(coal.res_abundance - 1) self.ui.complexity.setCurrentIndex(coal.complexity - 1) self.ui.mine_index.setText(u'%.1f' % coal.mine_index) self.ui.var_coeff.setText(u'%.1f' % coal.var_coeff) self.ui.caving_zone_height.setText(u'%.1f' % coal.czh) self.ui.stability.setCurrentIndex(coal.stability - 1) self.ui.layer_gap.setText(u'%.1f' % coal.layer_gap) self.ui.influence_factor.setText(u'%.1f' % coal.influence_factor)